HackMD
    • Sharing Link copied
    • /edit
    • View mode
      • Edit mode
      • View mode
      • Book mode
      • Slide mode
      Edit mode View mode Book mode Slide mode
    • Note Permission
    • Read
      • Only me
      • Signed-in users
      • Everyone
      Only me Signed-in users Everyone
    • Write
      • Only me
      • Signed-in users
      • Everyone
      Only me Signed-in users Everyone
    • More (Comment, Invitee)
    • Publishing
    • Commenting Enable
      Disabled Forbidden Owners Signed-in users Everyone
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Invitee
    • No invitee
    • Options
    • Versions
    • Transfer ownership
    • Delete this note
    • Template
    • Save as template
    • Insert from template
    • Export
    • Google Drive Export to Google Drive
    • Gist
    • Import
    • Google Drive Import from Google Drive
    • Gist
    • Clipboard
    • Download
    • Markdown
    • HTML
    • Raw HTML
Menu Sharing Help
Menu
Options
Versions Transfer ownership Delete this note
Export
Google Drive Export to Google Drive Gist
Import
Google Drive Import from Google Drive Gist Clipboard
Download
Markdown HTML Raw HTML
Back
Sharing
Sharing Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Note Permission
Read
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Write
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
More (Comment, Invitee)
Publishing
More (Comment, Invitee)
Commenting Enable
Disabled Forbidden Owners Signed-in users Everyone
Permission
Owners
  • Forbidden
  • Owners
  • Signed-in users
  • Everyone
Invitee
No invitee
   owned this note    owned this note      
Published Linked with
Like BookmarkBookmarked
Subscribed
  • Any changes
    Be notified of any changes
  • Mention me
    Be notified of mention me
  • Unsubscribe
Subscribe
--- tags: cofacts, meeting note --- 20190424 會議記錄 ===== ttcat, orz, bil, 文武, ggm > 上次開會紀錄:https://g0v.hackmd.io/s/rJB1nENcN > ## 小聚檢討 :::info 當日闢謠後討論:https://hackmd.io/ZQKsam5sT4yDf0yOoduxfw ::: ### 貼紙補償 名單看KKtix 人都有報到 * 小狗小豬各50張 (Lucien給圖?) Caroline Lillian Paul 文武 Lucien (我說那個小貼貼啊) Cindy Andy 嘟嘟 慈 韋婷 Michael ggm bil orz 4000 ### 闢謠送貼圖 * 是時候檢查檢查有沒有新的200了 (已經發文) ## 新功能貼文 ### Downvote 理由 - 顯示 Downvote 理由:https://github.com/cofacts/rumors-site/pull/159 by leanne - 詢問 Downvote 理由:https://github.com/cofacts/rumors-site/pull/158 by jihchi :::success 待寫文案 + 出圖 ::: ## 理由檢討 From https://g0v.hackmd.io/s/rJB1nENcN#%E4%BB%8A%E6%97%A5%E8%A8%8E%E8%AB%96%E7%B4%80%E9%8C%84 1. 文武提案:隱藏只送一次且沒填寫理由的訊息 2. bil 提案:提供方法來標記個別使用者「不用傳理由」,用於線下活動,降低高濃度浸潤假訊息的人傳訊息進來的門檻 MrOrz: 小孩才做選擇,大人就是兩個都做。 bil 提案也會需要文武提案「讓每個人都能不填理由」增加回報率,才能讓訊息更快進入大眾視野(盡快達成有 2 人以上回報) ## 能推播的新功能 :::info 上次討論: https://g0v.hackmd.io/s/rJB1nENcN#%E8%83%BD%E6%8E%A8%E6%92%AD%E7%9A%84%E6%96%B0%E5%8A%9F%E8%83%BD - LINE bot server connect to database, 獨立於 cofacts API,保持 client 獨立性 - 一個 LIFF: 列出所有這個 user id 傳過、有建檔的訊息,以及回應狀況,還有已讀未讀狀況 - trigger menu - cron job 產生 push notification 1. 知道哪些 article id 要查 2. 跟 cofacts API 要資料 3. 實際去 push message - nice to have: 任何新回應都通知 ::: ### cronjob 邏輯 1. 從 redis 取得上次 cronjob 啟動的 timestamp 2. 去 Cofacts API 列出所有在該 timestamp 以後才新建立、且未刪除的 `ArticleReply` 3. 由 2 整理出 list of unique, updated article ids 4. 從 user <> selected article 關聯表,找出要通知的對象 (list of unique users to update) 5. 使用 [multicast API](https://developers.line.biz/en/reference/messaging-api/#send-multicast-message) 告知使用者「之前的訊息有回應囉」導引使用者點開 LIFF 6. redis 紀錄這次執行的 timestamp ### LIFF 顯示邏輯 - 從 LIFF API 取得 user id;持 user id 向 LINE bot server 查詢新的 API,得到自己查詢過的文章列表 - 文章列表,包含: - 時間 - 文章內文節錄(點擊時進入 cofacts、紀錄「已讀」) - 回應數(新的數量) - 點按 LIFF 會傳訊息進 Cofacts chatbot,chatbot 列出回應列表供使用者點按,進入 `CHOOSING_REPLY`;若只有一則回應,自動 `skipUser` - 這樣使用者才能在 LINE bot 內按「有用沒用」回應 - 在 LINE bot 內比在 LIFF 內方便轉傳 - 回應內仍然有文章連結,使用者如果真的要進網站,也不會沒門路 - 顯示上次 cron job 執行日期(redis 內 timestamp) ### user <> selected article 關聯表 insert 時機 - 傳訊息、資料庫沒有、填寫理由送出後 - 傳訊息、選擇一則資料庫訊息,但該訊息沒有回應。 (沒填理由也算) - 傳訊息、選擇一則資料庫訊息,有回應。 ### 相關 API quota Send multicast message, LINE official accounts - 100,000 requests per minute - 2,000,000 recipients per minute ### DB schema #### userArticleLink 紀錄 user <> selected article 關聯 - `userId`: LINE user ID - `articleId`: Cofacts article ID - `createdAt`: 關聯建立之時間 - `timing`: 第一次送出 or 尚無回應 or 已有回應 - `readAt`: 使用者已讀此訊息的時間。LIFF 內用此計算新回應篇數。在使用者點擊 LIFF 時更新。 #### Redis 新欄位:`scannedAt` 紀錄上次執行 cron job 的時間。 ## GEC (deadline: 4/29) 送出前改改討論。 ## Tech4Democracy case study (deadline: 5/3) ## coscup 社群軌投稿 (deadline: 5/6) https://blog.coscup.org/2019/04/2019-cfp-open.html#g0v > 哈囉,g0v 今年也參加了COSCUP 的社群議程,今年 g0v 社群議程原則上包含下列主題—「開放政府」、「新媒體」、「公共服務」、「開放資料」、「社會參與」和「基礎建設」這幾個大方向。歡迎各位投稿分享你今年的專案吧! >

Import from clipboard

Advanced permission required

Your current role can only read. Ask the system administrator to acquire write and comment permission.

This team is disabled

Sorry, this team is disabled. You can't edit this note.

This note is locked

Sorry, only owner can edit this note.

Reach the limit

Sorry, you've reached the max length this note can be.
Please reduce the content or divide it to more notes, thank you!

Import from Gist

Import from Snippet

or

Export to Snippet

Are you sure?

Do you really want to delete this note?
All users will lost their connection.

Create a note from template

Create a note from template

Oops...
This template has been removed or transferred.


Upgrade

All
  • All
  • Team
No template.

Create a template


Upgrade

Delete template

Do you really want to delete this template?

This page need refresh

You have an incompatible client version.
Refresh to update.
New version available!
See releases notes here
Refresh to enjoy new features.
Your user state has changed.
Refresh to load new user state.

Sign in

Forgot password

or

Sign in via GitHub

New to HackMD? Sign up

Help

  • English
  • 中文
  • 日本語

Documents

Tutorials

Book Mode Tutorial

Slide Example

YAML Metadata

Resources

Releases

Blog

Policy

Terms

Privacy

Cheatsheet

Syntax Example Reference
# Header Header 基本排版
- Unordered List
  • Unordered List
1. Ordered List
  1. Ordered List
- [ ] Todo List
  • Todo List
> Blockquote
Blockquote
**Bold font** Bold font
*Italics font* Italics font
~~Strikethrough~~ Strikethrough
19^th^ 19th
H~2~O H2O
++Inserted text++ Inserted text
==Marked text== Marked text
[link text](https:// "title") Link
![image alt](https:// "title") Image
`Code` Code 在筆記中貼入程式碼
```javascript
var i = 0;
```
var i = 0;
:smile: :smile: Emoji list
{%youtube youtube_id %} Externals
$L^aT_eX$ LaTeX
:::info
This is a alert area.
:::

This is a alert area.

Versions

Versions

Upgrade now

Version named by    

More Less
  • Edit
  • Delete

Note content is identical to the latest version.
Compare with
    Choose a version
    No search result
    Version not found

Feedback

Submission failed, please try again

Thanks for your support.

On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

Please give us some advice and help us improve HackMD.

 

Thanks for your feedback

Remove version name

Do you want to remove this version name and description?

Transfer ownership

Transfer to
    Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.