Во время вспышки эпидемии поездка на общественном транспорте может привести к риску перекрестного заражения. Мы часто видим в основных средствах массовой информации что-то вроде «Срочно ищу пассажиров такого-то рейса в такой-то день». С другой стороны, существует немало инструментов, которые могут предоставить информацию о том, была ли в определённом транспортном средстве вспышка эпидемии. Однако невозможно ожидать, что все пассажиры, путешествующие во время вспышки эпидемии, будут обращать внимание на эту информацию или активно искать её. Это приводит к тому, что информация не может быть эффективно передана тем, кто в ней нуждается.
Воспользовавшись возможностью благотворительного хакатона Tencent Cloud, организованного командой разработчиков облачных технологий несколько дней назад, мы с коллегой разработали небольшое приложение «同乘码» (код для совместных поездок). Пассажиры могут сканировать код при посадке в общественный транспорт, чтобы подписаться на информацию об этом рейсе. Если позже пассажиры сообщат о вспышке эпидемии или она будет официально объявлена, небольшое приложение будет активно отправлять сообщения пассажирам, отсканировавшим код, через функцию подписки на сообщения WeChat, обеспечивая эффективную передачу информации о вспышках эпидемии. В настоящее время это небольшое приложение было открыто для всех, и пользователи могут использовать его любым способом.
Скачайте исходный код:
git clone https://gitee.com/tencent_cloud_development/tcb-hackthon-ncov2019confirm.git
Измените appid:
В project.config.json измените appid.
{
// ...
"appid": "Ваш appid"
// ...
}
Импортируйте проект в инструмент разработчика WeChat и откройте «Облачная разработка». Создайте новую среду облачной разработки и получите evn_id, затем настройте config и config.js.
{
"env": "xxx", // Идентификатор новой среды облачной разработки, обратите внимание, что это идентификатор, а не имя
"traceUser": true // Отслеживать ли пользователя true / false
}
Облачная консоль разработки — база данных — создайте коллекцию:
— admin: таблица информации администратора для проверки самоотчётов о случаях заболевания; — chatroom: информация о чате/сообщениях, необходимо добавить уникальный индекс к groupId; — member: список пользователей, совместно использующих транспортное средство, необходимо отдельно добавить уникальные индексы к roomId и openId; — report: информация о сообщениях о вспышках болезней, необходимо добавить уникальный индекс к roomId; — roomInfo: информация об общественном транспорте, необходимо добавить уникальный индекс к key; — traffic: подтверждённые случаи заболевания в общественном транспорте.
Структура коллекции следующая:
admin коллекция
field | type |
---|---|
openId | string |
member коллекция
field | type |
---|---|
opendId | string |
roomId | string |
src | string |
status | number |
userInfo | object |
report коллекция
field | type |
---|---|
date | string |
name | string |
phone | string |
review | number |
roomId | string |
rtype | string |
roomInfo коллекция
field | type |
---|---|
date | string |
key | string |
typeName | string |
typeValue | string |
wxacode | string |
traffic коллекция
field | type |
---|---|
created_at | string |
source | string |
t_date | string |
t_end | string |
t_memo | string |
t_no | string |
t_no_sub | string |
t_pos_end | string |
t_pos_start | string |
t_start | string |
t_type | string |
updated_at | string |
verified | number |
who | string |
После создания коллекции установите разрешения на «Все пользователи могут читать, только создатель может читать и писать».
Войдите в каталог cloudfunctions, щёлкните правой кнопкой мыши и загрузите, затем разверните.
Каталог openapi облачных функций, щёлкните правой кнопкой мыши и загрузите, затем развёрните.
Щёлкните правой кнопкой мыши каталог sendmsg облачных функций и загрузите, затем развёрните.
Способ подачи заявки на шаблон подписки на сообщение: подайте заявку на настраиваемый шаблон push-уведомления на https://mp.weixin.qq.com/, «Функция» — «Подписка на сообщение» — «Добавить», обратите внимание на формат параметров.
Метод настройки шаблона подписки на сообщение: в cloudfunctions — sendmsg — index.js настройте templateId на идентификатор настраиваемого шаблона подписки на сообщение.
Ctrl + S, проект запущен!
Небольшое приложение может управлять данными через HTTP-интерфейсы, предоставляемые облачными функциями. Облачные функции также разрабатываются на основе узлов. Необходимо добавить соответствующие функции в облачную консоль управления Tencent и включить доступ по протоколу HTTP. В настоящее время в интерфейсе нет функции проверки разрешений, которую можно реализовать, добавив skey в код.
Список интерфейсов:
sendmsg отправляет сообщение определённому пассажиру, обратите внимание, что сначала необходимо подать заявку на шаблон сообщения в WeChat Management. confirmReport подтверждает информацию о вспышке заболевания, отправленную пользователем. getReport получает список неподтверждённых сообщений о вспышках заболеваний. addReport сообщает о вспышке болезни, подтверждённой официальными лицами.
Параметры интерфейса см. в исходном коде.
Исходный код в основном состоит из двух частей:
Клиент использует нативное небольшое приложение, сервер полностью использует облачные функции.
defool kapt4inw01f
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )