package Ġcom . k yle da h lin . rule bot Ċ Ċ import Ġdiscord 4 j . common . util . Snow flake Ċ import Ġdiscord 4 j . core . Discord Client Ċ import Ġdiscord 4 j . discord json . json . Immutable Message CreateRequest Ċ import Ġdiscord 4 k . create Message In Channel Ċ import Ġdiscord 4 k . suspend Application Id Ċ import Ġdiscord 4 k . suspend User In Guild Ċ Ċ interface ĠRule bot Context Ġ{ ĊĠĠĠ Ġsuspend Ġfun Ġget Username In Guild ( userId : ĠSnow flake , Ġguild Id : ĠSnow flake ): ĠString ĊĠĠĠ Ġsuspend Ġfun ĠsendMessage To Channel ( snow flake : ĠSnow flake , Ġon Build : ĠImmutable Message CreateRequest . Builder . () Ġ-> ĠUnit ) ĊĠĠĠ Ġsuspend Ġfun Ġbot Id (): ĠSnow flake Ċ } Ċ Ċ class ĠRule bot Context Impl ( private Ġval Ġclient : ĠDiscord Client ) Ġ: ĠRule bot Context Ġ{ ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġbot Id () Ġ= ĠSnow flake . of ( client . suspend Application Id ()) ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġget Username In Guild ( userId : ĠSnow flake , Ġguild Id : ĠSnow flake ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġclient . suspend User In Guild ( userId , Ġguild Id ). username () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun ĠsendMessage To Channel ( ĊĠĠĠĠĠĠĠ Ġsnow flake : ĠSnow flake , ĊĠĠĠĠĠĠĠ Ġon Build : ĠImmutable Message CreateRequest . Builder . () Ġ-> ĠUnit ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġclient . create Message In Channel ( snow flake , Ġon Build ) ĊĠĠĠ Ġ} Ċ }