Asked Oct 14th, 4:42 AM 122 0 2
  • 122 0 2
0

Cách làm notification trên browser kèm sound

Share
  • 122 0 2

Mình có sử dụng Notification API để làm thông báo trên browser của client, hiện đã có notification bắn thành công nhưng mình đang muốn có thêm âm thanh báo có notify thì đang bị vướng ở đoạn này. MÌnh có thử search trên google thì có suggest là dùng Audio nhưng dùng thằng này thì khi không có tương tác với site thì nó sẽ báo lỗi. Có thể hiểu đơn giản là mình đang muốn khi đang ở tab khác hoặc đang ẩn browser xuống thì vẫn có thể nhận được sound từ notificaion, bạn nào dã làm thành công rồi thì cho mình keyword hoặc hướng làm với.

2 ANSWERS


Answered Wednesday, 5:04 AM
+1

Bạn thử làm cách này được không nhé.

  1. Khi vào trang bạn cho trình duyệt load file sound của bạn xuống.
  2. Khi bạn gọi show notify thì bạn gọi js để play luôn đoạn sound kia. audio.play()
Share
Nguyen Tuan Anh @TuanAnh9996
Wednesday, 6:40 AM

mình cũng thử nhét audio.play() vào đoạn handle của Notification rồi nhưng chỉ cần không tương tác với site thì cũng sẽ lỗi

Uncaught (in promise) DOMException: play() failed because the user didn't interact with the document first.
0
| Reply
Share
morikun @thanhnguyen
Thursday, 9:03 AM

@TuanAnh9996 ko tương tác là sao bạn nhỉ.
trước mình cũng dùng audio.play mà để làm chức năng play playlist music. để cả ngày nó vẫn chạy.
hay do chrome cập nhật gì đó rồi nhỉ ?

0
| Reply
Share
Nguyen Tuan Anh @TuanAnh9996
Friday, 7:32 AM

@thanhnguyen là khi bắt đầu sử dụng web thì user phải có 1 hành động gì đó (click chuột, scroll tại tab web của mình) trước khi chuyển qua tab mới để audio.play() có thể chạy đó bạn. Bạn xem thêm cái cái Autoplay Policy của chrome ở đây này.

0
| Reply
Share
Answered Thursday, 5:38 AM
0

sử dụng video tag thêm muted attr sẽ bypass Autoplay Policy của chrome

<video loop muted autoplay id="videomain">
  <source src="videoname.mp4" type="video/mp4">
</video>
Share
Nguyen Tuan Anh @TuanAnh9996
Friday, 7:32 AM

để mình thử xem sao

0
| Reply
Share