- CQ 碼 🐴
CQTag 為一個抽象類別,正常情況下並不會直接建立一個 CQTag 的實例,而是使用其子類別,如 CQAt、CQImage... 等。
CQTag 作為所有 CQ 碼的親類別。
tag.tagName
string
CQ碼功能名,如 "at"
、"image"
... 等。
tag.data
ReadOnly<object>
data
對象的值可能為 string
, boolean
及 number
。
data
對象包含的內容為,可能會出現在上報消息中的 CQ 碼參數,依照參數名稱,描述於 data
對象的各字段下。
如:上報消息中含有 "[CQ:at,qq=123456789]"
,則 tag.data
對象內容為 { qq: 123456789 }
。
tag.modifier
object
只出現在API 調用中的 CQ 碼參數。
如:調用 API 發送圖片,若要禁用緩存,須加上之 cache 參數即為 modifier
的內容,CQ 碼為 "[CQ:image,cache=0,file=file]"
,modifier
對象內容為 { cache: 0 }
。
tag.equals(another)
another
CQTag- 返回值:
boolean
若 another
非繼承自 CQTag
類別,則 false
。
若 another.tagName
不同於 this.tagName
,則 false
。
若 another.data
與 this.data
進行 Deep Equal (strict mode) 比對不相符,則 false
。
其餘返回 true
。
tag.coerce()
- 返回值:
this
將 data
對象的值,依照各 CQ 碼的定義,強制轉型。
此方法為通常為內部使用。
tag.toString()
- 返回值:
string
返回 CQ 碼的文字型態,如 "[CQ:at,qq=123456789]"
。
tag.valueOf()
- 返回值:
string
藉此方法,使 CQ 碼可以進行如字串相加... 等運算。
const tag = new CQAt(123456789)
console.log(tag + ' 你好') // "[CQ:at,qq=123456789] 你好"
tag.toJSON()
- 返回值: CQHTTPMessage
見 CQHTTP API 之消息段說明。
new CQAnonymous([shouldIgnoreIfFailed])
shouldIgnoreIfFailed
boolean [modifier]
tag.ignore
boolean
[modifier]
new CQAt(qq)
qq
number [data]
tag.qq
ReadOnly<number>
[data]
new CQBFace(id, p)
id
number [data]p
string [modifier]
關於這個神祕的 p
,可以參考 CQ 码的坑。
tag.id
ReadOnly<number>
[data]
new CQCustomMusic(url, audio, title[, content[, image]])
url
string [data]audio
string [data]title
string [data]content
string [data]image
string [data]
tag.type // "custom"
ReadOnly<"custom">
[data]
tag.url
ReadOnly<string>
[data]
tag.audio
ReadOnly<string>
[data]
tag.title
ReadOnly<string>
[data]
tag.content
ReadOnly<string>
[data]
tag.image
ReadOnly<string>
[data]
new CQDice()
tag.type
- ReadOnly [data]
new CQEmoji(id)
id
number [data]
tag.id
ReadOnly<number>
[data]
new CQFace(id)
id
number [data]
tag.id
ReadOnly<number>
[data]
new CQImage(file[, cache])
file
string [data]cache
boolean [modifier]
tag.file
ReadOnly<string>
[data]
tag.url
ReadOnly<string>
[data]
tag.cache
boolean
[modifier]
new CQMusic(type, id)
type
string [data]id
number [data]
tag.type
ReadOnly<string>
[data]
tag.id
ReadOnly<number>
[data]
new CQRecord(file[, magic])
file
stringmagic
boolean
tag.file
ReadOnly<string>
[data]
tag.magic
true | undefined
[modifier]
tag.hasMagic()
- 返回值: boolean
new CQRPS()
tag.type
- ReadOnly [data]
new CQSFace(id)
id
number [data]
tag.id
ReadOnly<number>
[data]
new CQShake()
new CQShare(url, title[, content[, image]])
url
string [data]title
string [data]content
string [data]image
string [data]
tag.url
ReadOnly<string>
[data]
tag.title
ReadOnly<string>
[data]
tag.content
ReadOnly<string>
[data]
tag.image
ReadOnly<string>
[data]
new CQText(text)
text
string [data]
tag.text
ReadOnly<string>
[data]