送出留言時如果網路不穩,內容會直接消失

19 views
Skip to first unread message

unread,
May 24, 2022, 10:28:28 AM5/24/22
to TRPGline.com
如題
目前機制只要使用者送出留言,打字框裡的內容就會消失,如果送出留言的瞬間網路斷線,內容沒有成功送進聊天頻道,那整段留言都會直接不見
希望發送留言的機制裡可以加個buffer去暫存尚未送出的內容
或至少等留言成功送出,得到ack或response.ok之類的,再清掉使用者UI這邊的打字框裡的內容

(剛才打了一大段文字RP,沒有另外備份,就這樣被吃掉了Q_Q)

TRPGline.com

unread,
May 24, 2022, 12:17:27 PM5/24/22
to TRPGline.com
感謝你的意見
想要確認一下情境

是送出的時候斷線, 然後重新整理頁面後恢復
還是送出的時候斷線, 留在房間裡面等到連線恢復的時候還留在頁面?

第一種狀況的話應該是無法解決的, 因為已經是新的頁面了, 資料是留不住的
第二種狀況的話我應該是可以解決. 但會有很多延伸狀況要處理

而送出的情況除了斷線,lag也是可能的情況之一

- 使用者打完字, 點擊送出, UI鎖住送出鍵, 等到送出成功後解鎖-> 清除框內訊息
上面這是理想狀況, 但是如果並不是斷線, 而只是單純的lag, 那就要有標示

- 使用者打完字, 點擊送出, UI鎖住送出鍵, 系統標示送出訊息中, 使用者等待數秒後收到成功response, 解鎖送出鍵

但如果使用者網路正常, 會變成

- 使用者打完字, 點擊送出, UI鎖住送出鍵, 系統標示出現0.1秒就收到成功訊息於是馬上消失=> 這導致使用者每送出留言就會閃現一個看不完的訊息, 長期下來是非常惱人的

然後再加進錯誤處理, 又會有很多情境需要思考

我之後應該會做, 只是這個極端情境優先度會低一些


現時的話, 按下ctrl+z 回復之前發送的訊息可以嗎? 這樣就可以等連線回來再重新發送一遍

喵 在 2022年5月24日 星期二上午10:28:28 [UTC-4] 的信中寫道:

unread,
May 24, 2022, 12:59:39 PM5/24/22
to TRPGline.com
是第二種情況
Ctrl+Z理論上有用,但我剛剛的情況又更極端:
我要連續送出兩段留言,第一段留言遇到斷線被吃掉,等到連線恢復時我的第二段留言又剛好按下送出
導致Ctrl+Z只能回復第二段留言

也剛好是我這裡連線不穩,兩段留言送出之間的幾秒時間差遇到斷線,後續又恢復
才會發生這種極端狀況
能理解您會把這個情況的優先度往後排,這邊也覺得這樣合理,就是稍微報備一下會有這種情境發生這樣,辛苦了!

至於您提到的系統標示會很惱人這點,也許可以參考噗浪的做法:不特別跳出標示,而是在等待文字發送的期間把文字改成淺色
1653411188609.gif
但因為這裡的打字框有text formatting的功能,無法預期使用者當下的文字顏色,所以我不知道這部分技術上能不能辦到

TRPGline.com 在 2022年5月25日 星期三上午12:17:27 [UTC+8] 的信中寫道:

TRPGline.com

unread,
May 29, 2022, 11:11:52 AM5/29/22
to TRPGline.com
改成淺色這個方法倒是不錯的主意, 雖然顏色的部分需要處理, 但是應該可以用相似方法去解決

目前建案了, 以後有時間的時候會去處理, 非常感謝回報

喵 在 2022年5月24日 星期二下午12:59:39 [UTC-4] 的信中寫道:
Reply all
Reply to author
Forward
0 new messages