chat 相关问题

“即时消息系统”的通用术语。它还可以表示即时消息系统中发生的讨论。

android聊天应用程序开发

我想为Android创建聊天应用程序,我想知道做到这一点的最佳方法。 我的第一个选择是使用手机和服务器之间的套接字连接,以便服务器可以发送任何新的

回答 3 投票 0

copilot编辑代理模式下拉列表中缺少vscode insiders

代理模式,直到今天一直运行。今天早上,我注意到在副本编辑中选择代理模式的下拉选项已经消失。 我正在使用

回答 0 投票 0

WebSocket流在Django + Next.js中不起作用 - 仅获取第一和最终消息

I'M与Django(频道)构建AI聊天应用程序,用于后端和前端。目的是通过Websocket连接流出AI生成的响应块 - 类似于...

回答 1 投票 0

BlazorServer&Signalrchat

我是《大火》中的新手,并试图使用Signalr制作社交应用程序,用户可以在该应用程序中向其他用户发送私人消息,并且需要聊天弹出窗口以显示何时在应用程序中在线。 我搜索了

回答 1 投票 0





Gettingorg.springframework.messaging.converter.messageconversionexception in Chat Application

<!DOCTYPE html> <html xmlns:th="http://www.thymeleaf.org"> <head> <meta charset="UTF-8"> <title>Real Time Chat Application</title> <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous"> </head> <body> <div class="container mt-4"> <h1 class="text-center">Real-Time Chat Application</h1> <div id="chat" class="border rounded p-3 mb-3" style="height: 300px; overflow-y: auto;"></div> <div class="input-group mb-3"> <input type="text" id="senderInput" class="form-control" placeholder="Your Name..."> </div> <div class="input-group mb-3"> <input type="text" id="messageInput" class="form-control" placeholder="Type Message..."> <div id="input-group-append"> <button id="sendMessage" class="btn btn-primary">Send</button> </div> </div> </div> </body> <script src="https://cdn.jsdelivr.net/npm/sockjs-client@1/dist/sockjs.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/stomp.js/2.3.3/stomp.min.js"></script> <script> function setConnected(connected) { document.getElementById("sendMessage").disabled = !connected; } function connect() { let socket = new SockJS('/chat'); stompClient = Stomp.over(socket); stompClient.connect({}, function(frame) { setConnected(true); stompClient.subscribe('topic/messages', function(message) { showMessage(JSON.parse(message.body)); }); }); } function showMessage(message){ let chat=document.getElementById('chat'); let messageElement=document.createElement('div'); messageElement.textContent=message.sender+':'+ message.content; messageElement.class="border-bottom mb-1"; chat.scrollTop=chat.scrollHeight; } function sendMessage(){ let sender=document.getElementById('senderInput').value; let content=document.getElementById('messageInput').value; let chatMessage={ sender:sender, content:content } stompClient.send("/app/sendMessage",{},JSON.stringify(chatMessage)); document.getElementById('messageInput').value=''; } document.getElementById('sendMessage').onclick=sendMessage; window.onload=connect; </script> </html>

回答 0 投票 0



在 JavaFX 中使 TextArea 随 TextHeight 一起增长(行/行)

我一直在尝试让 TextArea 随其内容一起增长,例如: 文本区域中有一行,现在用户继续书写并到达文本区域的右边框并且文本换行...

回答 3 投票 0

分布式系统中客户端之间的websocket通信

我正在尝试构建即时通讯应用程序。客户不仅会发送消息,还经常发送音频。我决定使用 websocket 连接与客户端进行通信。它速度快而且...

回答 3 投票 0

如何从另一台计算机连接到 localhost:5555?

我正在构建一个聊天应用程序,它在本地主机端口 5555 上运行,但是当它在另一台计算机上运行时,它说目标计算机主动拒绝连接。如何让另一台电脑连接...

回答 2 投票 0

TDLib 中“UpdateNewChat”事件中的意外聊天

我在 TDLib 中使用 LoadChats 方法时遇到 UpdateNewChat 事件问题。有时,我会收到我不再是成员或从未成为成员的聊天更新...

回答 1 投票 0

在 Plone CMS 中集成自托管即时消息/聊天解决方案

我正在寻找一种在企业克隆内联网中使用的聊天产品。 我不希望我的用户需要注册或批准任何外部服务(irc、gtalk、社交等),因此该产品...

回答 3 投票 0

使用 PHP 创建 Firebase 网络聊天

我有用 PHP 编写的 Web 应用程序,我想为我的 Web 应用程序构建一个实时聊天模块,我想使用 firebase,但我无法弄清楚如何使用 fir-base 构建聊天和PHP 所以...

回答 3 投票 0

如何在ruby中运行后台线程?

我是 ruby 新手,认为重建我用 C# 编写的简单聊天程序是个好主意。 我正在使用 Ruby 2.0.0 MRI(Matz 的 Ruby 实现)。 问题是我想要 I/O...

回答 1 投票 0

如何嵌入youtube直播聊天

我正在尝试将 YouTube 直播聊天嵌入到我网站上的网页上, <p>我正在尝试将 YouTube 直播聊天嵌入到我网站的网页上,</p> <pre><code>&lt;iframe allowfullscreen=&#34;&#34; frameborder=&#34;0&#34; height=&#34;270&#34; src=&#34;https://www.youtube.com/live_chat?v=hHW1oY26kxQ&amp;embed_domain=localhost&#34; width=&#34;480&#34;&gt;&lt;/iframe&gt; </code></pre> <p>我正在尝试这个,但聊天根本不显示,如果尝试使用我拥有的真实域进行嵌入域,但这也不起作用。</p> </question> <answer tick="false" vote="13"> <p>在我看来,<strong>YouTube 禁用了在外部网站上嵌入实时聊天的功能</strong>,但随后忘记更新文档。或者,可能存在未修复的错误破坏了此功能。</p> <p><strong>2021 更新:聊天嵌入再次起作用。</strong> 使用与以前相同的语法。根据下面<a href="https://stackoverflow.com/questions/52468303/how-to-embed-youtube-livestream-chat/58739531?noredirect=1#comment124100273_58739531">有用的评论</a>。</p> <h2>详情</h2> <p>YouTube 知识库仍然表示,仍然可以使用您发布的 URL 将实时聊天 iframe 嵌入到外部网站中(<a href="https://support.google.com/youtube/answer/2524549?hl=en" rel="nofollow noreferrer">参见此处</a>,在“嵌入实时聊天”部分中)。</p> <p>但是,当尝试这样做并查看浏览器的控制台时,您将看到如下消息:</p> <blockquote> <p>拒绝在框架中显示“https://www.youtube.com/live_chat?v=12345&embed_domain=example.com”,因为它将“X-Frame-Options”设置为“sameorigin”。</p> </blockquote> <p>在查看对 <pre><code>x-frame-options: SAMEORIGIN</code></pre> 请求的响应时,您还可以在浏览器开发人员工具的“网络”选项卡中看到 <pre><code>https://www.youtube.com/live_chat?…</code></pre> 标头。</p> <p>这意味着 YouTube 不希望浏览器将其嵌入到 iframe 中,除非嵌入到 youtube.com 本身。 (在 YouTube 本身上,此嵌入代码仍然有效:当您检查 YouTube 上当前流式传输的任何实时视频的源代码时,您会发现那里的实时聊天窗口是在 iframe 中使用相同的 <pre><code>/live_chat?…</code></pre> 请求创建的。) </p> <p>此功能已被删除的其他指示:</p> <ul> <li><p>YouTube 文档提到:</p> <blockquote> <p>实时聊天模块仅存在于 YouTube 观看页面上 - 它不跟随嵌入式播放器。 (<a href="https://support.google.com/youtube/answer/2524549?hl=en" rel="nofollow noreferrer">来源</a>)</p> </blockquote> <p>我相信这是文档的新部分,下面的“嵌入实时聊天”部分已经过时了。</p> </li> <li><p><a href="https://www.peggyktc.com/2016/05/embed-livestream-and-chat.html" rel="nofollow noreferrer">本教程</a>从 2016 年开始使用记录的 URL 格式在底部附近嵌入示例实时聊天,现在它显示相同的“拒绝在框架中显示 [...],因为它将 'X-Frame-Options' 设置为‘同源’。”假设这在 2016 年奏效,那么 YouTube 方面肯定发生了一些变化。</p> </li> <li><p>这个 <a href="https://www.reddit.com/r/youtube/comments/9k18fd" rel="nofollow noreferrer">Reddit 帖子</a>讲述了某人的嵌入式实时聊天如何在 2018 年 9 月初突然停止工作——就在这个问题被问到之前不久。</p> </li> </ul> <h2>替代品</h2> <ul> <li><p>您可以使用 YouTube Livestream API,特别是 <a href="https://developers.google.com/youtube/v3/live/docs/liveChatMessages" rel="nofollow noreferrer">LiveChatMessages</a> 端点来获取和创建聊天消息。可能有开源库可以帮助解决这个问题。到目前为止,我找到了<a href="https://github.com/yuta0801/youtube-live-chat" rel="nofollow noreferrer">这个</a>(可以显示但不能创建聊天消息)。</p> </li> <li><p>您可以嵌入自己的聊天,可以安装在您自己的服务器上,也可以安装在<a href="https://www.dacast.com/blog/best-live-chat-with-html5-video-player-solutions/" rel="nofollow noreferrer">云托管的实时流聊天解决方案</a>。该解决方案还可以提供 YouTube 实时聊天不提供的功能,例如允许匿名访问者发帖。</p> </li> <li><p>您可以反向代理 <pre><code>https://www.youtube.com/live_chat?…</code></pre> URL,转发 YouTube 的响应,但删除 X-Frame-Options 标头。</p> </li> <li><p>如果您只需要一台或多台计算机的解决方案,您可以使用浏览器扩展从 YouTube 响应中删除 X-Frame-Options 标头。请参阅<a href="https://stackoverflow.com/q/41718033">这个问题</a>。</p> </li> </ul> </answer> <answer tick="false" vote="7"> <p>这似乎与引入<a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement/referrerPolicy" rel="noreferrer">对 iframe 的更改</a>有关,至少在我遇到此问题时是这样。</p> <p>要解决此问题,我建议使用如下脚本:</p> <pre><code>&lt;script&gt; let frame = document.createElement(&#34;iframe&#34;); frame.referrerPolicy = &#34;origin&#34;; frame.src = &#34;https://www.youtube.com/live_chat?v=VIDEO_ID&amp;embed_domain=&#34; + window.location.hostname; frame.frameBorder = &#34;0&#34;; frame.id = &#34;chat-embed&#34;; let wrapper = document.getElementById(&#34;chat-embed-wrapper&#34;); wrapper.appendChild(frame); &lt;/script&gt; </code></pre> <p>其中 <pre><code>chat-embed-wrapper</code></pre> 是 id 为 <pre><code>chat-embed</code></pre> 的 iframe 的父级,<pre><code>VIDEO_ID</code></pre>(在 <pre><code>frame.src</code></pre> 分配中)是目标视频的 id。您必须根据您的设置对此进行一些修改,但这是一般情况的解决方案。</p> </answer> <answer tick="false" vote="2"> <p>不知道你最后是否成功了?我们已经设法使用此 iframe 在我们的网站上运行它,希望它对您有所帮助:</p> <pre><code>&lt;iframe src=&#34;https://www.youtube.com/live_chat?v=YourVidCodeHere&amp;embed_domain=www.YourDomainHere.com&#34;width=&#34;100%&#34; height=&#34;600&#34;&gt;&lt;/iframe&gt;  </code></pre> <p>我希望这会有所帮助:) PS 它不适用于移动设备(YouTube 表示他们已从移动设备上删除了此功能),但它确实适用于桌面和选项卡。</p> <p>最美好的祝愿。</p> </answer> <answer tick="false" vote="2"> <p>Angular 的简单解决方案:</p> <p>HTML 部分:</p> <pre><code> &lt;iframe frameborder=&#34;0&#34; height=&#34;470&#34; [src]=&#34;url&#34; width=&#34;780&#34;&gt;&lt;/iframe&gt; </code></pre> <p>TS部分:</p> <pre><code>constructor(private sanitizer: DomSanitizer) {} ngOnInit() { this.url = this.sanitizer.bypassSecurityTrustResourceUrl(&#39;https://www.youtube.com/live_chat?v=[YOUR_LIVESTREAM_ID]&amp;embed_domain=&#39; + window.location.hostname); } </code></pre> </answer> <answer tick="false" vote="0"> <p>我可以确认这确实有效。但是,当 <pre><code>embed_domain</code></pre> 的值为“example.com”时,即使页面的 url 以“<a href="https://www.example.com" rel="nofollow noreferrer">https://www.example.com</a>”开头,我也会收到相同的 X Frame 错误。即确保该值匹配 <pre><code>window.location.hostname</code></pre>。如果您没有规范的主机重定向,Addison Crump 的解决方法可能会解决此问题。 </p> </answer> <answer tick="false" vote="0"> <pre><code> &lt;iframe src=&#34;https://www.youtube.com/live_chat?v=VIDEO_ID&amp;embed_domain=127.0.0.1&#34; width=&#34;350&#34; height=&#34;500&#34; &gt;&lt;/iframe&gt; </code></pre> <p>它对我有用!</p> </answer> <answer tick="false" vote="0"> <p>这是我当前在 WordPress 网站上工作的 iframe:</p> <pre><code>&lt;iframe src=&#34;https://www.youtube.com/live_chat?v=YOUTUBE_VIDEO_ID&amp;amp;embed_domain=www.yourdomain.com&#34; width=&#34;100%&#34; height=&#34;550&#34; data-gtm-yt-inspected-4=&#34;true&#34; data-gtm-yt-inspected-14=&#34;true&#34; data-gtm-yt-inspected-13=&#34;true&#34; data-gtm-yt-inspected-7=&#34;true&#34; data-gtm-yt-inspected-6=&#34;true&#34; data-gtm-yt-inspected-17=&#34;true&#34; data-gtm-yt-inspected-22=&#34;true&#34; data-gtm-yt-inspected-15=&#34;true&#34; data-gtm-yt-inspected-20=&#34;true&#34;&gt;&lt;/iframe&gt; </code></pre> <p>您需要更改的网址是这样的:</p> <p>“https://www.youtube.com/live_chat?v=YOUTUBE_VIDEO_ID&embed_domain=www.yourdomain.com”</p> <p>更改 YOUTUBE_VIDEO_ID 以匹配与聊天相关的视频</p> <p>更改 <a href="http://www.yourdomain.com" rel="nofollow noreferrer">www.yourdomain.com</a> 以匹配您的域名</p> <p>希望有帮助</p> </answer> </body></html>

回答 0 投票 0

如何在页面刷新时更新聊天记录的显示?

我使用 Gradio 的聊天 UI: 导入sqlite3 将渐变导入为 gr 导入时间 格式化历史记录 = [] sqlite = 无 def loadHistoryFromDB(): 全局 sqlite,formatted_history sql="选择角色,

回答 1 投票 0

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.