一步一步搭建客服系统 (5) 发送图片、文件

客服系统里,经常要发送图片文件,对方可以直接看到图片;如果发送文件,对方可以download下来。

 

1 发送图片文件

先利用jquery uploadify来上传图片:

 

相关的三个images下的文件:

http://yunpan.cn/cHgDdAGNUeMcF  访问密码 7705

 

在后台把文件保存下来:

 

完成之后,首先在自己的聊天框显示图片,然后再发送给对方:

 

这里是发送给所有人:

webrtc.sendToAll('chat', { message: img, nick: webrtc.config.nick });

 

2 发送文件

  • 当有人进入聊天时,会有一个peer参数传进来,创建一个文件上传的按钮:

webrtc.on('createdPeer', function (peer) {

……

var fileinput = document.createElement('input');
fileinput.type = 'file';

 

  • 为文件上传按钮添加change的事件,并用传进来的peer来发送文件:

fileinput.addEventListener('change', function () {

var file = fileinput.files[0];
var sender = peer.sendFile(file);

  • 接收方用peer的fileTransfer事件来接收文件

// receiving an incoming filetransfer
peer.on('fileTransfer', function (metadata, receiver) {

 

  • 发送方和接收方都可以用progress事件来实现进度条效果:

// hook up send progress
sender.on('progress', function (bytesSent) {
    sendProgress.value = bytesSent;
});

 

// hook up receive progress
receiver.on('progress', function (bytesReceived) {
   receiveProgress.value = bytesReceived;
});

 

最终效果图:

clip_image002

完整代码如下:

 

如果不清楚webrtc为何物,请参考《3分钟实现网页版多人文本、视频聊天室 (含完整源码)》。

 

一步一步搭建客服系统

 

 

.

posted @ 2015-09-18 09:38  疯吻IT  阅读(1738)  评论(0编辑  收藏  举报