{"id":1335,"date":"2025-06-10T09:22:50","date_gmt":"2025-06-10T01:22:50","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/wpcms\/wpdt\/1335.html"},"modified":"2025-06-10T09:22:50","modified_gmt":"2025-06-10T01:22:50","slug":"%e9%80%82%e7%94%a8%e4%ba%8e%e5%b0%8f%e5%9e%8b%e4%bc%81%e4%b8%9a%e7%9a%848%e4%b8%aa%e6%9c%80%e4%bd%b3%e5%ae%a2%e6%88%b7%e6%9c%8d%e5%8a%a1%e5%b7%a5%e5%85%b7%ef%bc%88%e4%b8%93%e5%ae%b6%e6%8e%a8%e8%8d%90","status":"publish","type":"post","link":"https:\/\/www.zhaozhao123.cn\/wpcms\/post\/1335.html","title":{"rendered":"\u9002\u7528\u4e8e\u5c0f\u578b\u4f01\u4e1a\u76848\u4e2a\u6700\u4f73\u5ba2\u6237\u670d\u52a1\u5de5\u5177\uff08\u4e13\u5bb6\u63a8\u8350\uff09"},"content":{"rendered":"<div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<h2 class=\"wp-block-heading my-0\">&#20889; Bug&#24037;&#31243;&#24072;&#65306;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>&#22312;&#24403;&#20170;&#31454;&#20105;&#28608;&#28872;&#30340;&#24066;&#22330;&#29615;&#22659;&#20013;&#65292;&#25552;&#20379;&#20248;&#36136;&#23458;&#25143;&#26381;&#21153;&#24050;&#25104;&#20026;&#20225;&#19994;&#25104;&#21151;&#30340;&#20851;&#38190;&#22240;&#32032;&#20043;&#19968;&#12290;&#29305;&#21035;&#26159;&#22312;&#23567;&#22411;&#20225;&#19994;&#20013;&#65292;&#33021;&#22815;&#24555;&#36895;&#21709;&#24212;&#23458;&#25143;&#30340;&#38656;&#27714;&#21644;&#38382;&#39064;&#65292;&#19981;&#20165;&#33021;&#22815;&#25552;&#39640;&#23458;&#25143;&#30340;&#28385;&#24847;&#24230;&#65292;&#36824;&#33021;&#22686;&#24378;&#21697;&#29260;&#30340;&#24544;&#35802;&#24230;&#21644;&#21475;&#30865;&#12290;&#20197;&#19979;&#26159;&#20843;&#27454;&#36866;&#29992;&#20110;&#23567;&#22411;&#20225;&#19994;&#30340;&#26368;&#20339;&#23458;&#25143;&#26381;&#21153;&#24037;&#20855;&#65292;&#23427;&#20204;&#21487;&#20197;&#24110;&#21161;&#24744;&#25552;&#21319;&#26381;&#21153;&#25928;&#29575;&#21644;&#36136;&#37327;&#12290;<\/p>\n<h3>1. <strong>Slack<\/strong><\/h3>\n<ul>\n<li><strong>&#21151;&#33021;<\/strong>&#65306;&#23454;&#26102;&#27807;&#36890;&#12289;&#25991;&#20214;&#20849;&#20139;&#12289;&#22242;&#38431;&#21327;&#20316;&#12290;<\/li>\n<li><strong>&#20248;&#28857;<\/strong>&#65306;&#26041;&#20415;&#24555;&#25463;&#30340;&#21363;&#26102;&#36890;&#35759;&#65292;&#25903;&#25345;&#22810;&#31181;&#25991;&#20214;&#26684;&#24335;&#30340;&#20998;&#20139;&#65292;&#26377;&#21161;&#20110;&#20419;&#36827;&#22242;&#38431;&#38388;&#30340;&#39640;&#25928;&#21327;&#20316;&#12290;<\/li>\n<li>\n<p><strong>&#31034;&#20363;&#20195;&#30721;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-javascript\">\/\/ &#21019;&#24314;&#19968;&#20010;&#31616;&#21333;&#30340;Slack&#28040;&#24687;&#21457;&#36865;&#20989;&#25968;\nfunction sendSlackMessage(channel, message) {\n    var options = { method: 'POST', headers: {'Content-Type': 'application\/json'}, json: true };\n    var payload = JSON.stringify({ text: message });\n    return fetch('<a href=\"https:\/\/www.zhaozhao123.cn\/skin\/go?url=aHR0cHM6Ly9zbGFjay5jb20vYXBpL2NoYXQucG9zdE1lc3NhZw==\" rel=\"noopener noreferrer nofollow\">https:\/\/slack.com\/api\/chat.postMessag<\/a>', options).then(function(response) {\n        return response.json();\n    }).catch(function(error) {\n        console.error('Error sending Slack message:', error);\n    });\n}\n\n\/\/ &#20351;&#29992;&#20989;&#25968;&#21457;&#36865;&#19968;&#26465;&#28040;&#24687;&#21040;&#29305;&#23450;&#39057;&#36947;\nsendSlackMessage('general', 'Hello everyone! This is a test message from your Slack bot.');<\/code><\/pre>\n<\/li>\n<\/ul>\n<h3>2. <strong>Intercom<\/strong><\/h3>\n<ul>\n<li><strong>&#21151;&#33021;<\/strong>&#65306;CRM&#31995;&#32479;&#12289;&#38598;&#25104;&#23458;&#26381;&#12289;&#33258;&#21160;&#21270;&#33829;&#38144;&#27963;&#21160;&#12290;<\/li>\n<li><strong>&#20248;&#28857;<\/strong>&#65306;&#25552;&#20379;&#24378;&#22823;&#30340;&#23458;&#25143;&#20851;&#31995;&#31649;&#29702;&#21151;&#33021;&#65292;&#36890;&#36807;&#38598;&#25104;&#30340;&#26041;&#24335;&#19982;&#38144;&#21806;&#12289;&#24066;&#22330;&#33829;&#38144;&#31561;&#31995;&#32479;&#26080;&#32541;&#23545;&#25509;&#65292;&#23454;&#29616;&#25968;&#25454;&#30340;&#20840;&#38754;&#25972;&#21512;&#12290;<\/li>\n<li><strong>&#31034;&#20363;&#20195;&#30721;<\/strong>&#65306;\n<pre><code class=\"language-javascript\">\/\/ &#33719;&#21462;&#29992;&#25143;&#20449;&#24687;&#24182;&#21457;&#36865;&#27426;&#36814;&#37038;&#20214;\nfunction getAndSendWelcomeEmail(userId) {\n    const user = users.find(u =&gt; u.id === userId);\n    if (user) {\n        const email = user.email;\n        const subject = 'Welcome to our platform!';\n        const body = `Dear ${user.name},nnWe are excited to have you on board!nnBest regards,nThe Team`;\n        intercom.sendEmail(email, subject, body)\n            .then(() =&gt; {\n                console.log(`Email sent to ${email}`);\n            })\n            .catch((error) =&gt; {\n                console.error('Failed to send email:', error);\n            });\n    } else {\n        console.error('User not found');\n    }\n}<\/code><\/pre><\/li>\n<\/ul>\n<h3>3. <strong>Zendesk<\/strong><\/h3>\n<ul>\n<li><strong>&#21151;&#33021;<\/strong>&#65306;&#33258;&#21161;&#26381;&#21153;&#38376;&#25143;&#12289;&#30693;&#35782;&#24211;&#12289;&#23450;&#21046;&#21270;&#35299;&#20915;&#26041;&#26696;&#12290;<\/li>\n<li><strong>&#20248;&#28857;<\/strong>&#65306;&#25552;&#20379;&#20102;&#20016;&#23500;&#30340;&#33258;&#21161;&#26381;&#21153;&#36873;&#39033;&#65292;&#24110;&#21161;&#23458;&#25143;&#33258;&#34892;&#35299;&#20915;&#38382;&#39064;&#65307;&#21516;&#26102;&#65292;&#23427;&#20063;&#25903;&#25345;&#39640;&#24230;&#33258;&#23450;&#20041;&#65292;&#20197;&#28385;&#36275;&#19981;&#21516;&#34892;&#19994;&#21644;&#19994;&#21153;&#38656;&#27714;&#12290;<\/li>\n<li>\n<p><strong>&#31034;&#20363;&#20195;&#30721;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-javascript\">\/\/ &#21019;&#24314;&#19968;&#20010;&#26032;&#30340;Zendesk&#26696;&#20214;\nfunction createTicket(title, description) {\n    const ticket = {\n        title,\n        description,\n        status: 'new',\n        tags: ['support']\n    };\n    return Zendesk.createTicket(ticket)\n        .then((ticketId) =&gt; {\n            console.log(`Ticket created with ID ${ticketId}`);\n        })\n        .catch((err) =&gt; {\n            console.error('Error creating ticket:', err);\n        });\n}\n\n\/\/ &#20351;&#29992;&#20989;&#25968;&#21019;&#24314;&#26032;&#30340;Zendesk&#26696;&#20214;\ncreateTicket('Product bug report', 'I am experiencing an issue with the product.');<\/code><\/pre>\n<\/li>\n<\/ul>\n<h3>4. <strong>HubSpot CRM<\/strong><\/h3>\n<ul>\n<li><strong>&#21151;&#33021;<\/strong>&#65306;&#38598;&#25104;&#24335;CRM&#12289;&#33829;&#38144;&#33258;&#21160;&#21270;&#12289;&#25253;&#21578;&#20998;&#26512;&#12290;<\/li>\n<li><strong>&#20248;&#28857;<\/strong>&#65306;&#38598;&#25104;&#20102;&#33829;&#38144;&#12289;&#38144;&#21806;&#12289;&#23458;&#25143;&#26381;&#21153;&#31561;&#22810;&#20010;&#27169;&#22359;&#65292;&#20026;&#23458;&#25143;&#25552;&#20379;&#20102;&#19968;&#20010;&#32479;&#19968;&#30340;&#35270;&#22270;&#26469;&#31649;&#29702;&#21644;&#36319;&#36394;&#20854;&#25152;&#26377;&#23458;&#25143;&#21644;&#20132;&#26131;&#12290;<\/li>\n<li>\n<p><strong>&#31034;&#20363;&#20195;&#30721;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-javascript\">\/\/ &#28155;&#21152;&#26032;&#32447;&#32034;\nfunction addNewLead(leadData) {\n    return Hubspot.CRM.addLeads([leadData])\n        .then((leads) =&gt; {\n            console.log(leads.length ? `Lead added successfully` : 'No leads were added');\n        })\n        .catch((err) =&gt; {\n            console.error('Error adding lead:', err);\n        });\n}\n\n\/\/ &#20351;&#29992;&#20989;&#25968;&#28155;&#21152;&#26032;&#30340;&#32447;&#32034;\naddNewLead({\n    name: 'John Doe',\n    company: 'Example Inc.',\n    job_title: 'Salesperson'\n});<\/code><\/pre>\n<\/li>\n<\/ul>\n<h3>5. <strong>LiveChat<\/strong><\/h3>\n<ul>\n<li><strong>&#21151;&#33021;<\/strong>&#65306;&#32842;&#22825;&#26426;&#22120;&#20154;&#12289;&#23454;&#26102;&#22312;&#32447;&#32842;&#22825;&#12289;&#21453;&#39304;&#25910;&#38598;&#12290;<\/li>\n<li><strong>&#20248;&#28857;<\/strong>&#65306;&#36890;&#36807;&#38598;&#25104;&#30340;&#32842;&#22825;&#26426;&#22120;&#20154;&#65292;&#21487;&#20197;&#33258;&#21160;&#35299;&#31572;&#24120;&#35265;&#38382;&#39064;&#65292;&#20943;&#23569;&#20154;&#24037;&#20132;&#20114;&#30340;&#26102;&#38388;&#65292;&#20174;&#32780;&#25552;&#39640;&#21709;&#24212;&#36895;&#24230;&#21644;&#26381;&#21153;&#36136;&#37327;&#12290;<\/li>\n<li>\n<p><strong>&#31034;&#20363;&#20195;&#30721;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-javascript\">\/\/ &#21019;&#24314;&#19968;&#20010;&#26032;&#30340;LiveChat&#20250;&#35805;\nasync function createLiveChatSession(customerId, agentId) {\n    try {\n        await Livechat.createSession({\n            customer_id: customerId,\n            agent_id: agentId,\n            type: 'chat',\n            channel: 'live_chat'\n        });\n        console.log('Live chat session created successfully');\n    } catch (error) {\n        console.error('Error creating live chat session:', error);\n    }\n}\n\n\/\/ &#20351;&#29992;&#20989;&#25968;&#21019;&#24314;&#26032;&#30340;LiveChat&#20250;&#35805;\ncreateLiveChatSession('customer_001', 'agent_001');<\/code><\/pre>\n<\/li>\n<\/ul>\n<h3>6. <strong>SurveyMonkey<\/strong><\/h3>\n<ul>\n<li><strong>&#21151;&#33021;<\/strong>&#65306;&#38382;&#21367;&#35843;&#26597;&#12289;&#25968;&#25454;&#20998;&#26512;&#12290;<\/li>\n<li><strong>&#20248;&#28857;<\/strong>&#65306;&#25552;&#20379;&#20813;&#36153;&#30340;&#22312;&#32447;&#38382;&#21367;&#35774;&#35745;&#24037;&#20855;&#65292;&#20197;&#21450;&#35814;&#32454;&#30340;&#20998;&#26512;&#25253;&#21578;&#65292;&#24110;&#21161;&#20225;&#19994;&#26356;&#22909;&#22320;&#20102;&#35299;&#23458;&#25143;&#38656;&#27714;&#21644;&#20559;&#22909;&#12290;<\/li>\n<li>\n<p><strong>&#31034;&#20363;&#20195;&#30721;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-javascript\">\/\/ &#21457;&#36865;&#38382;&#21367;&#36992;&#35831;\nfunction sendInvitationToSurvey(surveyId) {\n    return SurveyMonkey.surveys.inviteParticipants({\n        surveyId: surveyId,\n        participantEmails: ['john.doe@example.com'],\n        language: 'en',\n        allowMultipleResponses: false\n    })\n        .then((response) =&gt; {\n            console.log('Invitations sent successfully');\n        })\n        .catch((error) =&gt; {\n            console.error('Error sending invitations:', error);\n        });\n}\n\n\/\/ &#20351;&#29992;&#20989;&#25968;&#21457;&#36865;&#38382;&#21367;&#36992;&#35831;\nsendInvitationToSurvey('survey_001');<\/code><\/pre>\n<\/li>\n<\/ul>\n<h3>7. <strong>Trello<\/strong><\/h3>\n<ul>\n<li><strong>&#21151;&#33021;<\/strong>&#65306;&#39033;&#30446;&#31649;&#29702;&#12289;&#24453;&#21150;&#20107;&#39033;&#21015;&#34920;&#12290;<\/li>\n<li><strong>&#20248;&#28857;<\/strong>&#65306;&#36866;&#21512;&#23567;&#22411;&#22242;&#38431;&#25110;&#20010;&#20154;&#65292;&#29992;&#20110;&#32452;&#32455;&#39033;&#30446;&#36827;&#24230;&#21644;&#20219;&#21153;&#20998;&#37197;&#65292;&#24110;&#21161;&#22242;&#38431;&#25104;&#21592;&#20043;&#38388;&#20445;&#25345;&#33391;&#22909;&#30340;&#27807;&#36890;&#21644;&#21327;&#35843;&#12290;<\/li>\n<li>\n<p><strong>&#31034;&#20363;&#20195;&#30721;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-javascript\">\/\/ &#21019;&#24314;&#19968;&#20010;&#26032;&#30340;Trello&#21015;&#34920;\nasync function createList(name, idBoard) {\n    try {\n        const list = await Trello.list(idBoard, {name});\n        console.log(list);\n    } catch (error) {\n        console.error('Error creating list:', error);\n    }\n}\n\n\/\/ &#20351;&#29992;&#20989;&#25968;&#21019;&#24314;&#26032;&#30340;Trello&#21015;&#34920;\ncreateList('Tasks', 'board_001');<\/code><\/pre>\n<\/li>\n<\/ul>\n<h3>8. <strong>Zoom<\/strong><\/h3>\n<ul>\n<li><strong>&#21151;&#33021;<\/strong>&#65306;&#35270;&#39057;&#20250;&#35758;&#12289;&#22312;&#32447;&#22521;&#35757;&#12289;&#34394;&#25311;&#29616;&#23454;&#20307;&#39564;&#12290;<\/li>\n<li><strong>&#20248;&#28857;<\/strong>&#65306;&#25552;&#20379;&#28789;&#27963;&#30340;&#35270;&#39057;&#20250;&#35758;&#24037;&#20855;&#65292;&#38750;&#24120;&#36866;&#21512;&#36828;&#31243;&#24037;&#20316;&#21644;&#22312;&#32447;&#22521;&#35757;&#65292;&#22686;&#24378;&#20102;&#21592;&#24037;&#20043;&#38388;&#30340;&#20114;&#21160;&#21644;&#21512;&#20316;&#12290;<\/li>\n<li>\n<p><strong>&#31034;&#20363;&#20195;&#30721;<\/strong>&#65306;<\/p>\n<pre><code class=\"language-javascript\">\/\/ &#24320;&#22987;&#35270;&#39057;&#20250;&#35758;\nfunction startMeeting(meetingTitle, meetingDescription) {\n    const zoom = new Zoom({\n        apiKey: 'YOUR_API_KEY_HERE',\n        apiSecret: 'YOUR_API_SECRET_HERE',\n        token: 'YOUR_TOKEN_HERE'\n    });\n\n    zoom.meetings.start({\n        title: meetingTitle,\n        description: meetingDescription\n    }).then(() =&gt; {\n        console.log('Meeting started');\n    }).catch((err) =&gt; {\n        console.error('Error starting meeting:', err);\n    });\n}\n\n\/\/ &#20351;&#29992;&#20989;&#25968;&#24320;&#22987;&#26032;&#30340;&#35270;&#39057;&#20250;&#35758;\nstartMeeting('Virtual Training Session', 'This is a virtual training session for all employees.');<\/code><\/pre>\n<\/li>\n<\/ul>\n<p>&#36825;&#20123;&#24037;&#20855;&#21508;&#26377;&#29305;&#33394;&#65292;&#21487;&#20197;&#26681;&#25454;&#24744;&#30340;&#20855;&#20307;&#38656;&#27714;&#36873;&#25321;&#26368;&#36866;&#21512;&#30340;&#19968;&#27454;&#25110;&#20960;&#27454;&#26469;&#20248;&#21270;&#23458;&#25143;&#26381;&#21153;&#27969;&#31243;&#12290;&#24076;&#26395;&#36825;&#20123;&#24314;&#35758;&#23545;&#24744;&#26377;&#25152;&#24110;&#21161;&#65281;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<h2 class=\"wp-block-heading my-0\">&#40657;&#26495;IDE&#25945;&#20070;&#21280;&#65306;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<h3>1. Zendesk<\/h3>\n<p><strong>&#36866;&#21512;&#35268;&#27169;&#65306;<\/strong> &#23567;&#22411;&#20225;&#19994;<\/p>\n<p><strong>&#29305;&#28857;&#19982;&#20248;&#21183;&#65306;<\/strong><\/p>\n<ul>\n<li>&#24378;&#22823;&#30340;&#23458;&#25143;&#25903;&#25345;&#24179;&#21488;&#65292;&#21253;&#25324;&#32842;&#22825;&#26426;&#22120;&#20154;&#12289;&#37038;&#20214;&#36890;&#30693;&#21644;&#33258;&#23450;&#20041;&#28040;&#24687;&#12290;<\/li>\n<li>&#38598;&#25104;&#20102;&#22810;&#31181;&#33829;&#38144;&#24037;&#20855;&#65292;&#22914;&#30005;&#23376;&#37038;&#20214;&#12289;&#31038;&#20132;&#23186;&#20307;&#31561;&#12290;<\/li>\n<li>&#25552;&#20379;&#20016;&#23500;&#30340;&#30693;&#35782;&#24211;&#21644;&#25991;&#26723;&#12290;<\/li>\n<\/ul>\n<p><strong>&#20351;&#29992;&#26696;&#20363;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;div id=\"zdesk\"&gt;\n    &lt;h2&gt;&#22312;&#32447;&#23458;&#26381;&lt;\/h2&gt;\n    &lt;form action=\"\/ticket\" method=\"post\"&gt;\n        &lt;input type=\"text\" name=\"email\" placeholder=\"Enter email address...\"&gt;\n        &lt;button type=\"submit\"&gt;Send Ticket&lt;\/button&gt;\n    &lt;\/form&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<p><strong>&#31034;&#20363;&#20195;&#30721;&#65288;PHP&#25554;&#20214;&#65289;&#65306;<\/strong><\/p>\n<pre><code class=\"language-php\">&lt;?php\nrequire_once('Zendesk.php');\n$zendesk = new Zendesk();\n$zendesk-&gt;setApiKey('your-api-key'); \/\/ &#26367;&#25442;&#20026;&#24744;&#30340;API&#23494;&#38053;\n$email = $_POST['email'];\n$subject = 'New ticket';\n$message = 'Hello, this is a new ticket.';\n$priority = 'Normal'; \/\/ &#21487;&#36873;&#65306;&#35774;&#32622;&#20248;&#20808;&#32423;&#65292;&#20363;&#22914;'High', 'Medium', 'Low'\n$status = 'Open'; \/\/ &#21487;&#36873;&#65306;&#35774;&#32622;&#29366;&#24577;&#65292;&#20363;&#22914;'solved', 'in-progress', 'new'\n\ntry {\n    $result = $zendesk-&gt;sendTicket($email, $subject, $message, $priority, $status);\n    echo json_encode($result);\n} catch (Exception $e) {\n    echo $e-&gt;getMessage();\n}\n?&gt;<\/code><\/pre>\n<h3>2. Freshdesk<\/h3>\n<p><strong>&#36866;&#21512;&#35268;&#27169;&#65306;<\/strong> &#20013;&#22823;&#22411;&#20225;&#19994;<\/p>\n<p><strong>&#29305;&#28857;&#19982;&#20248;&#21183;&#65306;<\/strong><\/p>\n<ul>\n<li>&#31616;&#21333;&#26131;&#29992;&#65292;&#25552;&#20379;&#22810;&#31181;&#20869;&#32622;&#27169;&#26495;&#12290;<\/li>\n<li>&#25903;&#25345;&#22810;&#28192;&#36947;&#27807;&#36890;&#65292;&#21253;&#25324;&#37038;&#20214;&#12289;&#30005;&#35805;&#12289;&#31038;&#20132;&#23186;&#20307;&#31561;&#12290;<\/li>\n<li>&#25552;&#20379;&#24378;&#22823;&#30340;&#20998;&#26512;&#24037;&#20855;&#65292;&#24110;&#21161;&#22242;&#38431;&#20102;&#35299;&#23458;&#25143;&#38656;&#27714;&#12290;<\/li>\n<\/ul>\n<p><strong>&#20351;&#29992;&#26696;&#20363;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;form class=\"freshdesk-form\" action=\"\/tickets\/new\" method=\"post\"&gt;\n    &lt;label for=\"name\"&gt;Name:&lt;\/label&gt;&lt;br&gt;\n    &lt;input type=\"text\" id=\"name\" name=\"name\" required&gt;&lt;br&gt;\n    &lt;label for=\"email\"&gt;Email:&lt;\/label&gt;&lt;br&gt;\n    &lt;input type=\"email\" id=\"email\" name=\"email\" required&gt;&lt;br&gt;\n    &lt;label for=\"message\"&gt;Message:&lt;\/label&gt;&lt;br&gt;\n    &lt;textarea id=\"message\" name=\"message\" rows=\"5\" cols=\"40\"&gt;&lt;\/textarea&gt;&lt;br&gt;\n    &lt;button type=\"submit\"&gt;Submit&lt;\/button&gt;\n&lt;\/form&gt;<\/code><\/pre>\n<p><strong>&#31034;&#20363;&#20195;&#30721;&#65288;JavaScript&#25554;&#20214;&#65289;&#65306;<\/strong><\/p>\n<pre><code class=\"language-javascript\">document.getElementById('freshdesk-form').addEventListener('submit', function(event) {\n    event.preventDefault();\n    const formData = new FormData(this);\n    fetch('\/api\/tickets', {\n        method: 'POST',\n        body: formData,\n        headers: {\n            'Content-Type': 'multipart\/form-data'\n        }\n    }).then(response =&gt; response.json())\n        .then(data =&gt; console.log(data))\n        .catch(error =&gt; console.error(error));\n});<\/code><\/pre>\n<h3>3. Slack<\/h3>\n<p><strong>&#36866;&#21512;&#35268;&#27169;&#65306;<\/strong> &#22823;&#22411;&#32452;&#32455;<\/p>\n<p><strong>&#29305;&#28857;&#19982;&#20248;&#21183;&#65306;<\/strong><\/p>\n<ul>\n<li>&#23454;&#26102;&#36890;&#20449;&#24037;&#20855;&#65292;&#21487;&#20197;&#21019;&#24314;&#32676;&#32842;&#12289;&#31169;&#20449;&#12289;&#25991;&#20214;&#20849;&#20139;&#31561;&#21151;&#33021;&#12290;<\/li>\n<li>&#25552;&#20379;&#24378;&#22823;&#30340;AI&#21161;&#25163;&#65292;&#22914;&#22238;&#22797;&#28040;&#24687;&#12289;&#25552;&#37266;&#37325;&#35201;&#20107;&#20214;&#31561;&#12290;<\/li>\n<li>&#38598;&#25104;&#22810;&#31181;&#24212;&#29992;&#31243;&#24207;&#21644;&#26381;&#21153;&#65292;&#25552;&#39640;&#24037;&#20316;&#25928;&#29575;&#12290;<\/li>\n<\/ul>\n<p><strong>&#20351;&#29992;&#26696;&#20363;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;div class=\"slack-chat\"&gt;\n    &lt;ul&gt;\n        &lt;li&gt;&#27426;&#36814;&#26469;&#21040;Slack!&lt;\/li&gt;\n        &lt;li&gt;&#36825;&#26159;&#19968;&#20010;&#27979;&#35797;&#32842;&#22825;&#35760;&#24405;&#12290;&lt;\/li&gt;\n    &lt;\/ul&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<p><strong>&#31034;&#20363;&#20195;&#30721;&#65288;JavaScript&#25554;&#20214;&#65289;&#65306;<\/strong><\/p>\n<pre><code class=\"language-javascript\">const socket = io.connect('\/');\nsocket.on('connect', () =&gt; {\n    console.log('Connected to Slack!');\n});\n\n\/\/ &#21457;&#36865;&#32842;&#22825;&#28040;&#24687;\nfunction sendMessage(message) {\n    socket.emit('chat.postMessage', {channel: '#general', text: message}, (error, result) =&gt; {\n        if (error) {\n            console.error(error);\n        } else {\n            console.log(result);\n        }\n    });\n}\n\nsendMessage('Hello from your Slack bot!');<\/code><\/pre>\n<h3>4. Hootsuite<\/h3>\n<p><strong>&#36866;&#21512;&#35268;&#27169;&#65306;<\/strong> &#36328;&#34892;&#19994;&#22823;&#20844;&#21496;<\/p>\n<p><strong>&#29305;&#28857;&#19982;&#20248;&#21183;&#65306;<\/strong><\/p>\n<ul>\n<li>&#31038;&#20132;&#23186;&#20307;&#31649;&#29702;&#24179;&#21488;&#65292;&#21487;&#29992;&#20110;&#21457;&#24067;&#24086;&#23376;&#12289;&#35780;&#35770;&#12289;&#20998;&#20139;&#31561;&#20869;&#23481;&#12290;<\/li>\n<li>&#25552;&#20379;&#23454;&#26102;&#30417;&#25511;&#21151;&#33021;&#65292;&#20197;&#20415;&#21450;&#26102;&#21709;&#24212;&#23458;&#25143;&#21453;&#39304;&#12290;<\/li>\n<li>&#33258;&#21160;&#21270;&#24037;&#20316;&#27969;&#65292;&#21487;&#20197;&#24110;&#21161;&#20248;&#21270;&#36816;&#33829;&#27969;&#31243;&#12290;<\/li>\n<\/ul>\n<p><strong>&#20351;&#29992;&#26696;&#20363;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;hootsuite-container&gt;\n    &lt;h2&gt;&#31038;&#20132;&#23186;&#20307;&#31649;&#29702;&lt;\/h2&gt;\n    &lt;form action=\"\/posts\" method=\"post\"&gt;\n        &lt;input type=\"text\" name=\"title\" placeholder=\"Title...\"&gt;\n        &lt;textarea name=\"content\" placeholder=\"Content...\"&gt;&lt;\/textarea&gt;\n        &lt;button type=\"submit\"&gt;Publish&lt;\/button&gt;\n    &lt;\/form&gt;\n&lt;\/hootsuite-container&gt;<\/code><\/pre>\n<p><strong>&#31034;&#20363;&#20195;&#30721;&#65288;HTML&#25554;&#20214;&#65289;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;script src=\"https:<a href=\"https:\/\/www.zhaozhao123.cn\/skin\/go?url=aHR0cDovL2Nkbi5ob290c3VpdGUuY29tL2hvb3RlYXN5Lm1pbi5qcw==\" rel=\"noopener noreferrer nofollow\">\/\/cdn.hootsuite.com\/hooteasy.min.js<\/a>\"&gt;&lt;\/script&gt;\n&lt;script&gt;\n    window.Hoot.init({\n        appId: \"your-app-id\", \/\/ &#24212;&#29992;ID\n        appKey: \"your-app-key\", \/\/ &#24212;&#29992;&#23494;&#38053;\n        serverUrl: \"<a href=\"https:\/\/www.zhaozhao123.cn\/skin\/go?url=aHR0cHM6Ly9hcGkuaG9vdHN1aXRlLmNvbS92\" rel=\"noopener noreferrer nofollow\">https:\/\/api.hootsuite.com\/v<\/a>\"\n    });\n\n    document.querySelector(\"#publish\").addEventListener(\"click\", function() {\n        var title = document.querySelector(\"#title\").value;\n        var content = document.querySelector(\"#content\").value;\n\n        var postData = {\n            title: title,\n            content: content\n        };\n\n        window.Hoot.post(\"\/posts\", postData).then(function(response) {\n            alert(\"Post published!\");\n        }, function(error) {\n            alert(\"Error publishing post: \" + error.responseJSON.message);\n        });\n    });\n&lt;\/script&gt;<\/code><\/pre>\n<h3>5. Salesforce<\/h3>\n<p><strong>&#36866;&#21512;&#35268;&#27169;&#65306;<\/strong> &#20013;&#22823;&#22411;&#20225;&#19994;<\/p>\n<p><strong>&#29305;&#28857;&#19982;&#20248;&#21183;&#65306;<\/strong><\/p>\n<ul>\n<li>&#25552;&#20379;&#20840;&#38754;&#30340;&#20225;&#19994;&#32423;CRM&#35299;&#20915;&#26041;&#26696;&#65292;&#21253;&#25324;&#38144;&#21806;&#12289;&#26381;&#21153;&#12289;&#24066;&#22330;&#33829;&#38144;&#31561;&#21151;&#33021;&#12290;<\/li>\n<li>&#25552;&#20379;&#24378;&#22823;&#30340;&#25968;&#25454;&#20998;&#26512;&#33021;&#21147;&#65292;&#24110;&#21161;&#20225;&#19994;&#20570;&#20986;&#26126;&#26234;&#30340;&#20915;&#31574;&#12290;<\/li>\n<li>&#25552;&#20379;&#38598;&#25104;&#30340;&#31532;&#19977;&#26041;&#24212;&#29992;&#65292;&#22914;Google Analytics&#12289;Salesforce Marketing Cloud&#31561;&#12290;<\/li>\n<\/ul>\n<p><strong>&#20351;&#29992;&#26696;&#20363;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;div id=\"salesforce-crm\"&gt;\n    &lt;h2&gt;Salesforce CRM&lt;\/h2&gt;\n    &lt;form action=\"\/contacts\" method=\"post\"&gt;\n        &lt;input type=\"text\" name=\"first_name\" placeholder=\"First Name...\"&gt;\n        &lt;input type=\"text\" name=\"last_name\" placeholder=\"Last Name...\"&gt;\n        &lt;select name=\"job_title\"&gt;\n            &lt;option value=\"\"&gt;Select Job Title...&lt;\/option&gt;\n            &lt;option value=\"Manager\"&gt;Manager&lt;\/option&gt;\n            &lt;option value=\"Salesperson\"&gt;Salesperson&lt;\/option&gt;\n        &lt;\/select&gt;\n        &lt;button type=\"submit\"&gt;Add Contact&lt;\/button&gt;\n    &lt;\/form&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<p><strong>&#31034;&#20363;&#20195;&#30721;&#65288;jQuery&#25554;&#20214;&#65289;&#65306;<\/strong><\/p>\n<pre><code class=\"language-javascript\">$(document).ready(function() {\n    $('#add-contact').click(function(e) {\n        e.preventDefault();\n\n        var firstName = $('#firstName').val();\n        var lastName = $('#lastName').val();\n        var jobTitle = $('#jobTitle').val();\n\n        $.ajax({\n            url: '\/contacts',\n            type: 'POST',\n            data: {firstName: firstName, lastName: lastName, jobTitle: jobTitle},\n            success: function(response) {\n                console.log(response);\n            },\n            error: function(xhr, status, error) {\n                console.error(status + ': ' + error);\n            }\n        });\n    });\n});<\/code><\/pre>\n<h3>6. Buffer<\/h3>\n<p><strong>&#36866;&#21512;&#35268;&#27169;&#65306;<\/strong> &#20013;&#23567;&#22411;&#20225;&#19994;<\/p>\n<p><strong>&#29305;&#28857;&#19982;&#20248;&#21183;&#65306;<\/strong><\/p>\n<ul>\n<li>&#25552;&#20379;&#24378;&#22823;&#30340;&#31038;&#20132;&#20998;&#20139;&#24037;&#20855;&#65292;&#21253;&#25324;&#25512;&#29305;&#12289;Facebook&#12289;LinkedIn&#31561;&#12290;<\/li>\n<li>&#25552;&#20379;&#19987;&#19994;&#30340;&#22270;&#29255;&#32534;&#36753;&#22120;&#65292;&#20415;&#20110;&#29992;&#25143;&#36731;&#26494;&#21046;&#20316;&#39640;&#36136;&#37327;&#30340;&#22270;&#20687;&#12290;<\/li>\n<li>&#25552;&#20379;&#26234;&#33021;&#26631;&#31614;&#21151;&#33021;&#65292;&#24110;&#21161;&#29992;&#25143;&#26356;&#26377;&#25928;&#22320;&#31649;&#29702;&#21644;&#20998;&#31867;&#20449;&#24687;&#12290;<\/li>\n<\/ul>\n<p><strong>&#20351;&#29992;&#26696;&#20363;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;div id=\"buffer\"&gt;\n    &lt;h2&gt;Buffer&lt;\/h2&gt;\n    &lt;form action=\"\/share\" method=\"post\"&gt;\n        &lt;input type=\"text\" name=\"link\" placeholder=\"Link to share...\"&gt;\n        &lt;button type=\"submit\"&gt;Share&lt;\/button&gt;\n    &lt;\/form&gt;\n&lt;\/div&gt;<\/code><\/pre>\n<p><strong>&#31034;&#20363;&#20195;&#30721;&#65288;JavaScript&#25554;&#20214;&#65289;&#65306;<\/strong><\/p>\n<pre><code class=\"language-javascript\">document.getElementById('buffer-share').addEventListener('click', function() {\n    var link = document.getElementById('link-to-share').value;\n    var options = {\n        'twitter': {tweet: true},\n        'facebook': {share: true},\n        'linkedin': {share: true}\n    };\n    for (var key in options) {\n        if (options[key].tweet &amp;&amp; window.location.href.indexOf(key) &gt; -1) {\n            break;\n        }\n        if (options[key].share &amp;&amp; window.location.href.indexOf(key) === -1) {\n            continue;\n        }\n        options[key].tweet &amp;&amp; window.open(link);\n        options[key].share &amp;&amp; window.location.href = link;\n    }\n});<\/code><\/pre>\n<h3>7. Trello<\/h3>\n<p><strong>&#36866;&#21512;&#35268;&#27169;&#65306;<\/strong> &#22823;&#22411;&#39033;&#30446;&#31649;&#29702;&#22242;&#38431;<\/p>\n<p><strong>&#29305;&#28857;&#19982;&#20248;&#21183;&#65306;<\/strong><\/p>\n<ul>\n<li>&#29992;&#20110;&#39033;&#30446;&#31649;&#29702;&#65292;&#21253;&#25324;&#24453;&#21150;&#20107;&#39033;&#21015;&#34920;&#12289;&#20219;&#21153;&#20998;&#37197;&#12289;&#36827;&#24230;&#36319;&#36394;&#31561;&#21151;&#33021;&#12290;<\/li>\n<li>&#25552;&#20379;&#20016;&#23500;&#30340;&#33258;&#23450;&#20041;&#36873;&#39033;&#65292;&#20351;&#29992;&#25143;&#33021;&#22815;&#26681;&#25454;&#38656;&#35201;&#35843;&#25972;&#30028;&#38754;&#24067;&#23616;&#12290;<\/li>\n<li>&#25903;&#25345;&#21508;&#31181;&#21327;&#20316;&#26041;&#24335;&#65292;&#22914;&#35270;&#39057;&#20250;&#35758;&#12289;&#23631;&#24149;&#20849;&#20139;&#31561;&#12290;<\/li>\n<\/ul>\n<p><strong>&#20351;&#29992;&#26696;&#20363;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;trello-board&gt;\n    &lt;trello-list&gt;\n        &lt;trello-card&gt;\n            &lt;trello-task&gt;\n                &lt;span class=\"description\"&gt;Task description&lt;\/span&gt;\n                &lt;span class=\"actions\"&gt;\n                    &lt;a href=\"#\"&gt;Mark as Done&lt;\/a&gt;\n                    &lt;a href=\"#\"&gt;Edit Task&lt;\/a&gt;\n                &lt;\/span&gt;\n            &lt;\/trello-task&gt;\n        &lt;\/trello-card&gt;\n    &lt;\/trello-list&gt;\n&lt;\/trello-board&gt;<\/code><\/pre>\n<p><strong>&#31034;&#20363;&#20195;&#30721;&#65288;HTML&#25554;&#20214;&#65289;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;script src=\"https:<a href=\"https:\/\/www.zhaozhao123.cn\/skin\/go?url=aHR0cDovL3RyZWxsby5jb20vZXh0ZXJuYWwvanMvanF1ZXJ5LnRyZWxsby5taW4uanM=\" rel=\"noopener noreferrer nofollow\">\/\/trello.com\/external\/js\/jquery.trello.min.js<\/a>\"&gt;&lt;\/script&gt;\n&lt;script&gt;\n    $(document).ready(function() {\n        $.trello({\n            apiKey: 'your-api-key', \/\/ API&#23494;&#38053;\n            boardId: 'your-board-id', \/\/ &#26495;ID\n            token: 'your-token' \/\/ &#29992;&#25143;&#20973;&#35777;\n        });\n    });\n&lt;\/script&gt;<\/code><\/pre>\n<h3>8. Mailchimp<\/h3>\n<p><strong>&#36866;&#21512;&#35268;&#27169;&#65306;<\/strong> &#20013;&#23567;&#22411;&#20225;&#19994;<\/p>\n<p><strong>&#29305;&#28857;&#19982;&#20248;&#21183;&#65306;<\/strong><\/p>\n<ul>\n<li>&#25552;&#20379;&#30005;&#23376;&#37038;&#20214;&#33829;&#38144;&#21151;&#33021;&#65292;&#21253;&#25324;&#33258;&#21160;&#22238;&#22797;&#12289;&#25209;&#37327;&#21457;&#36865;&#12289;&#21463;&#20247;&#32454;&#20998;&#31561;&#21151;&#33021;&#12290;<\/li>\n<li>&#25552;&#20379;&#24378;&#22823;&#30340;&#25968;&#25454;&#21487;&#35270;&#21270;&#24037;&#20855;&#65292;&#35753;&#29992;&#25143;&#26356;&#22909;&#22320;&#29702;&#35299;&#33829;&#38144;&#27963;&#21160;&#30340;&#25928;&#26524;&#12290;<\/li>\n<li>&#25903;&#25345;&#21508;&#31181;&#33829;&#38144;&#33258;&#21160;&#21270;&#27969;&#31243;&#65292;&#22914;&#35746;&#38405;&#32773;&#36319;&#36827;&#12289;&#20248;&#24800;&#21048;&#21457;&#25918;&#31561;&#12290;<\/li>\n<\/ul>\n<p><strong>&#20351;&#29992;&#26696;&#20363;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;mailchimp-email&gt;\n    &lt;h2&gt;Mailchimp Email&lt;\/h2&gt;\n    &lt;form action=\"\/subscribe\" method=\"post\"&gt;\n        &lt;input type=\"email\" name=\"email\" placeholder=\"Your email...\"&gt;\n        &lt;button type=\"submit\"&gt;Subscribe&lt;\/button&gt;\n    &lt;\/form&gt;\n&lt;\/mailchimp-email&gt;<\/code><\/pre>\n<p><strong>&#31034;&#20363;&#20195;&#30721;&#65288;HTML&#25554;&#20214;&#65289;&#65306;<\/strong><\/p>\n<pre><code class=\"language-html\">&lt;script src=\"https:<a href=\"https:\/\/www.zhaozhao123.cn\/skin\/go?url=aHR0cDovL3d3dy5tYWlsY2hpbXAuY29tL2FwcHMvbWFpbGNoaW1wL2VtYmVkZGVkLw==\" rel=\"noopener noreferrer nofollow\">\/\/www.mailchimp.com\/apps\/mailchimp\/embedded\/<\/a>#\/forms\/1\"&gt;&lt;\/script&gt;<\/code><\/pre>\n<p>&#20197;&#19978;&#23601;&#26159;&#36866;&#29992;&#20110;&#23567;&#22411;&#20225;&#19994;&#30340;&#20843;&#31181;&#26368;&#20339;&#23458;&#25143;&#26381;&#21153;&#24037;&#20855;&#65292;&#27599;&#20010;&#24037;&#20855;&#37117;&#26377;&#20854;&#29420;&#29305;&#30340;&#20248;&#28857;&#21644;&#36866;&#29992;&#33539;&#22260;&#65292;&#21487;&#20197;&#26681;&#25454;&#20225;&#19994;&#30340;&#38656;&#27714;&#21644;&#20010;&#20154;&#20559;&#22909;&#36873;&#25321;&#21512;&#36866;&#30340;&#24037;&#20855;&#26469;&#25552;&#21319;&#23458;&#25143;&#26381;&#21153;&#20307;&#39564;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>&#20889; Bug&#24037;&#31243;&#24072;&#65306; &#22312;&#24403;&#20170;&#31454;&#20105;&#28608;&#28872;&#30340;&#24066;&#22330;&#29615;&#22659;&#20013;&#65292;&#038;#2..<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[51],"tuisongtax":[],"class_list":["post-1335","post","type-post","status-publish","format-standard","hentry","category-wpdt","tag-jzgj"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/posts\/1335","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/comments?post=1335"}],"version-history":[{"count":0,"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/posts\/1335\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/media?parent=1335"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/categories?post=1335"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/tags?post=1335"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/wpcms\/wp-json\/wp\/v2\/tuisongtax?post=1335"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}