предисловие
Только лысая голова может стать сильнее.
Текст был включен в мою избранную статью на GitHub, Welcome Star.:GitHub.com/Zhongf UC очень…
Если есть студенты, которые недавно читали мои статьи, они будут знать, что то, что я недавно сделал в компании,толкающая система. Система push также называется здесьПлатформа управления сообщениями, на самом деле это легко понять: предоставить систему, поддерживающую многоканальную отправку сообщений.
Некоторое время назад WeChat объявил:Интерфейс сообщения шаблона мини-программы будет отключен 10 января 2020 г., и разработчики смогут использовать функцию сообщения о подписке..
Изменения в базовом интерфейсе означают то же, что и для программистов.
Люди сидят дома, классы идут с неба
В этой статье в основном рассказывается о том, как я отправляю сюда небольшие программные сообщения, и краткое введение после доработки, надеюсь, оно будет всем полезно.
- Эта статья не требует каких-либо дополнительных знаний, поэтому смотрите ее с уверенностью.
1. Предварительные знания
Отправлять небольшие программные сообщения на самом деле очень просто, WeChat предоставляетОфициальная документация WeChatЧтобы наши разработчики могли проверить соответствующие базовые знания, предоставьте нам HTTP-интерфейс, чтобы мы могли легко вызывать:
Для разработчиков отправку небольшого программного сообщения можно разделить на три шага:
- Создайте шаблон на фоне WeChat
- Получить разрешение на выпуск
- Вызов интерфейса отправки для отправки сообщения
либо предыдущийШаблон сообщения, еще новый сейчасПодписаться на новости, шаги те же.
Во-вторых, разница между шаблонными сообщениями и сообщениями подписки
Почему WeChat переводит шаблонные сообщения в автономный режим и подписывает сообщения онлайн? Из шагов отправки апплета только "Получить разрешение на выпуск" подвижен, остальные два шага одинаковы.
мы разработчикиС помощью платформы WeChatЧтобы отправить сообщение пользователю,причина(выдано разрешение). Потому что WeChat по-прежнемуСосредоточьтесь на пользовательском опытеиз.
2.1 Шаблон сообщения
Причиной отправки сообщения шаблона является то, что пользователь недавно был активен в апплете и взаимодействовал с ним (например, отправлял форму). Затем разработчики могут собирать из этих взаимодействийformId
.
одинformId
будет держать7Дней, когда мы вызываем интерфейс отправки, нам нужно потреблятьformId
. Если у пользователя нетformId
, то мы не сможем отправить
- Фокус: отправитьШаблон сообщениядолжен нести
formId
Грубо говоря, этоformId
Это сертификат взаимодействия между пользователем и апплетом. WeChat считает, что только если пользователь недавно использовал ваш апплет, вы можете отправить ему/ей сообщение.
2.2 Сообщения о подписке
отШаблон сообщенияМы можем найти причину распространения: право на распространение находится в руках наших разработчиков, пока мы собираем большое количествоformId
, то мы7Несколько сообщений могут быть отправлены пользователям в течение дня.
Причина подписки на сообщение: право на отправку сообщенияотдайПользователь. Пользователь решает, получать push или нет, а это просто:
- Когда пользователь запускает определенные сцены, дайте пользователю всплывающее окно,Позвольте пользователю решить, получать ли push(и будет получен только один раз)
2.3 Разрешить пользователям получать сообщения, которые они хотят
При первом использовании WeChat вы все равно можете получатьМаркетинг, но вы, вероятно, не сможете получить его в ближайшее время.
- Не допускается злонамеренное побуждение пользователей к выполнению триггерных операций для достижения цели доставки шаблонов пользователям.
- Злонамеренное преследование не допускается, и выпускаются шаблоны, вызывающие преследование пользователей
- Запрещен злонамеренный маркетинг, выпускаются шаблоны маркетинговых целей.
Заголовок не может включать маркетинговый контент, включая, помимо прочего: потребительские скидки, скидки при покупках, обновления товаров, купоны, купоны на покупку, красные конверты, членские карты, накопления, мероприятия и т. д. Уведомление о маркетинговых тенденциях
WECHAT обнаружит ваш шаблон. Если у вас есть какие-либо вопросы, вы удалите свой шаблон (конечно, вы не позволяете вам создать шаблон, который может быть маркетинговым классом). Без шаблона я не могу отправить его.
В целом: WeChat будет различными способами ограничивать доставку ваших сообщений, чтобы сделатьПользователь получает сообщение, которое он сам хочет. На этот раз будетШаблон сообщенияизменить наПодписаться на новости, но также дает пользователю право отправлять сообщения.
Что касается того, хорошо это или плохо. У разных людей разные мнения.
Некоторые люди думают, что если пользователь выбирает, получать сообщение или нет, ему нужно больше операций, а всплывающее окно также является помехой для пользователя. Если пользователь не знаком с сообщением о подписке или напрямую нажимает «Отмена», апплет не сможет уведомить пользователя, и пользователь может из-за этого пропустить услугу, что является потерей как для продавца, так и для пользователя.
Некоторые люди также считают, что право на отправку сообщений находится в руках пользователей, что в значительной степени может избежать злонамеренного преследования со стороны продавцов.
Не стесняйтесь поделиться своими мыслями об этой версии в разделе комментариев~
3. Как мы это делаем?
Позвольте мне кратко рассказать о том, как я получаю доступ к новостям push-апплета на своей стороне.Я надеюсь, что это будет полезно для студентов, которые хотят получить доступ к новостям апплета.
Прежде всего, для шаблона, созданного в фоновом режиме WeChat, мы сначала ставимШаблон фона WeChat загружается в собственную базу данных и сохраняетсяВстаньте, а затем выполните страницу управления для управления шаблоном.
Если сообщение использует этот шаблон, мы также свяжем его (поскольку это упрощает проверку того, какие сообщения используют этот шаблон).
- Благодаря этой функции мы можем легко разобраться, какие шаблоны все еще используются и где находятся сценарии этой миграции. В будущем просто измените идентификатор шаблона сообщения на идентификатор шаблона сообщения подписки.
Например, у нашей компании есть не только один апплет, поэтому нам нужно классифицировать апплет, поэтому я не буду здесь вдаваться в подробности. На самом деле это слой инкапсуляции, например: женская одежда Mogujie отмечена цифрой 88, а платформа для онлайн-шоппинга Mogujie — цифрой 99.
Учитывайте последующие действия при разработке и написании кодаМасштабируемость
существуетШаблон сообщения, передняя часть ударитсяformId
, Я буду здесьStorm
БудуMQ
очистка данных вRedis
внутри. Затем я буду судить, есть ли у пользователя соответствующий, прежде чем отправить его.formId
.
WeChat теперь будетШаблон сообщенияизменить наПодписаться на новости, сбор formId и операция парсинга Storm в Redis с моей стороны исключены. WeChat, похоже, не предоставляет интерфейс, чтобы я мог судить, авторизован ли пользователь. Так что судить о том, авторизован ли пользователь, я могу только по возвращаемому значению при вызове интерфейса доставки.
Если вы новый студент, у которого есть доступ к сообщениям апплета WeChat, весь процесс будет намного проще.
- Студентам, работающим с интерфейсом, нужно открывать всплывающее окно только в необходимых сценариях, чтобы пользователи могли авторизоваться.
- Студенты в серверной части напрямую доставляют его пользователю и судят о статусе доставки в соответствии с возвращенным значением.
Поэтому, если я хочу отправить сообщение сюда, есть два основных шага:
- Создайте новое сообщение в фоновом режиме push (выберите шаблон WeChat, основную информацию о создателе сообщения, обработку правил, связанных с сообщениями (удалять ли дубликаты и т. д.)
- Деловая сторона называет мой открытый интерфейс
Бизнес-сторона вызывает открытый интерфейс на моей стороне. В основном я делаю следующее:
- Простая проверка входящих параметров деловой стороны, вклейка в полноценный шаблон содержания сообщения
- Если деловая сторона проходит в
userId
, мне нужно преобразовать вopenId
- Ограничьте скорость сообщений и вызовите интерфейс доставки WeChat
Помимо доставки сообщения, мы также будем рассматривать успешность и эффект от доставки сообщения (есть ли данные в реальном времени для просмотра, есть ли анализ офлайн-отчета), поэтому вот что я делаю:
-
Расставить точки над критическими ссылками
- Деловая сторона вызывает мой интерфейс, и я подтверждаю, что получил сообщение
- Это сообщение было отфильтровано по деловым причинам (возможно, преобразование userId в openId не удалось)
- При выдаче может быть из-за шаблона/токена/пользователя без авторизации и т.д.
- Запишите информацию об управлении в Kafka, затем очистите ее с помощью Storm, войдите в Redis для запроса в реальном времени и перетащите ее в таблицу Hive в автономном режиме.
RBI здесь на самом деле мыжурнал попаданий
Например, ниже мой пуш в реальном времени, согласноuserId
Ситуация с отправкой запроса:
наконец
В общем, пушить сообщения из мини-программ несложно, да и интерфейсов всего несколько. теперь пересмотрено наПодписаться на новостиПосле этого подключаться удобнее. Через месяц, когда вы будете использовать апплет, вы можете получать различные всплывающие окна, напоминающие вам, хотите ли вы авторизовать сообщение шаблона xxx.
Я не знаю, что все думают после прочтения моей статьи, добро пожаловать, чтобы оставить сообщение в области комментариев. Я часто буду делиться проблемами, с которыми я столкнулся на работе, и заметками, которые я тщательно систематизировал после учебы. Надеюсь, это будет полезно для всех. Если вы думаете, что в моей статье есть что-то, вы можете подписаться на меня!
Эта книга была включена в мои избранные статьи на GitHub, добро пожаловать, звезда:GitHub.com/Zhongf UC очень…
рад вывестигалантерейные товарыОбщедоступный номер технологии Java:Java3y. В публичном аккаунтеБолее 300 оригинальных статейТехнические статьи, обширные видеоресурсы, красивые карты мозга,Следуйте, чтобы получить его!
большое спасиботалантМы можем видеть здесь, если эта статья хорошо написана, я чувствую себя "три криво"что-тоеслипопросить лайк Пожалуйста, следите за ️ поделитесь пожалуйста 👥 Спросите сообщение 💬Это правда для меняочень полезно! ! !
Творить не легко Ваша поддержка и признание - самая большая мотивация для моего творчества Увидимся в следующей статье!