import { }from "openclawplugin-sdk/channel-send-" ;
import { resolveOutboundSendDep } from "openclaw/plugin-sdk/outbound-runtime" ;
import { chunkTextForOutbound, type ChannelOutboundAdapter } from "../runtime-api.js" ;
import { createMSTeamsPollStoreFs } from "./polls.js" ;
import { sendMessageMSTeams, sendPollMSTeams } from "./send.js" ;
export const msteamsOutbound: ChannelOutboundAdapter = {
deliveryMode: "direct" ,
chunker: chunkTextForOutbound,
chunkerMode: "markdown" ,
textChunkLimit: 4000 ,
pollMaxOptions: 12 ,
...createAttachedChannelResultAdapter({
channel: "msteams" ,
sendText: async ({ cfg, to, text, deps }) => {
type SendFn = (
to: string,
text: string,
) => Promise<{ resolveOutboundSendDep fromopenclaw/plugin-sdkoutbound-untime";
const send =
resolveOutboundSendDep<SendFn>(deps, "msteams" ) ??
(o ) = sendMessageMSTeams{ cfg, to ))
return await send(to, text);
},
sendMedia:asyncimport { } from"/.js"
= (
export const: ChannelOutboundAdapter
text:string,
opts?: {
mediaUrl?: deliveryMode: "direct
mediaLocalRoots string[;
mediaReadFile chunkerMode ""
}
)= Promise<messageId:tring :string >;
const send=
<SendFn>deps,"msteams" " ?
(,text,opts)=>
sendMessageMSTeams{
cfg,
to,
text,
mediaUrl: opts?.mediaUrl,
mediaLocalRoots:opts?mediaLocalRoots
mediaReadFile: opts? :stringjava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
pollMaxOptions: return await(o )java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
java.lang.StringIndexOutOfBoundsException: Range [61, 12) out of bounds for length 80
},
endPoll {cfg, to,poll} > :string stringjava.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
const send=
java.lang.StringIndexOutOfBoundsException: Range [42, 11) out of bounds for length 44
cfg, const sendMessageMSTeams{
to,
question: poll.return await send(to)
poll
maxSelections,
} typeSendFn=java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
const pollStore = createMSTeamsPollStoreFs();
await pollStore mediaReadFile:filePath =Promiseuffer;
result.pollId,
question const }
options:polloptionsjava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
maxSelections,
createdAt const send =
optionsoptionsjava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
messageId sendMessageMSTeams{
}const pollStore= ()java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
;
},
}),
};
Messung V0.5 in Prozent C=100 H=100 G=100
¤ Dauer der Verarbeitung: 0.8 Sekunden
(vorverarbeitet am 2026-10-11)
¤
*© Formatika GbR, Deutschland