Skip to content

Commit 54cea48

Browse files
Merge pull request #185 from Adamant-im/trello.com/c/nItHf2Jo
[https://trello.com/c/nItHf2Jo] Added Adelina
2 parents 02434df + 40d2327 commit 54cea48

File tree

8 files changed

+167
-74
lines changed

8 files changed

+167
-74
lines changed

Adamant/AppDelegate.swift

Lines changed: 79 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -479,68 +479,95 @@ extension AppDelegate {
479479
} else {
480480
unread = true
481481
}
482+
483+
if let adelina = AdamantContacts.adelina.messages["chats.welcome_message"] {
484+
chatProvider.fakeReceived(
485+
message: adelina.message,
486+
senderId: AdamantContacts.adelina.address,
487+
date: Date.adamantNullDate,
488+
unread: false,
489+
silent: adelina.silentNotification,
490+
showsChatroom: true,
491+
completion: { result in
492+
guard case let .failure(error) = result else {
493+
return
494+
}
495+
496+
print("ERROR showing exchenge message: \(error.message)")
497+
}
498+
)
499+
}
500+
482501
if let exchenge = AdamantContacts.adamantExchange.messages["chats.welcome_message"] {
483-
chatProvider.fakeReceived(message: exchenge.message,
484-
senderId: AdamantContacts.adamantExchange.address,
485-
date: Date.adamantNullDate,
486-
unread: false,
487-
silent: exchenge.silentNotification,
488-
showsChatroom: true,
489-
completion: { result in
490-
guard case let .failure(error) = result else {
491-
return
492-
}
493-
494-
print("ERROR showing exchenge message: \(error.message)")
495-
})
502+
chatProvider.fakeReceived(
503+
message: exchenge.message,
504+
senderId: AdamantContacts.adamantExchange.address,
505+
date: Date.adamantNullDate,
506+
unread: false,
507+
silent: exchenge.silentNotification,
508+
showsChatroom: true,
509+
completion: { result in
510+
guard case let .failure(error) = result else {
511+
return
512+
}
513+
514+
print("ERROR showing exchenge message: \(error.message)")
515+
}
516+
)
496517
}
497518

498519
if let betOnBitcoin = AdamantContacts.betOnBitcoin.messages["chats.welcome_message"] {
499-
chatProvider.fakeReceived(message: betOnBitcoin.message,
500-
senderId: AdamantContacts.betOnBitcoin.address,
501-
date: Date.adamantNullDate,
502-
unread: false,
503-
silent: betOnBitcoin.silentNotification,
504-
showsChatroom: true,
505-
completion: { result in
506-
guard case let .failure(error) = result else {
507-
return
508-
}
509-
510-
print("ERROR showing exchenge message: \(error.message)")
511-
})
520+
chatProvider.fakeReceived(
521+
message: betOnBitcoin.message,
522+
senderId: AdamantContacts.betOnBitcoin.address,
523+
date: Date.adamantNullDate,
524+
unread: false,
525+
silent: betOnBitcoin.silentNotification,
526+
showsChatroom: false,
527+
completion: { result in
528+
guard case let .failure(error) = result else {
529+
return
530+
}
531+
532+
print("ERROR showing exchenge message: \(error.message)")
533+
}
534+
)
512535
}
513536

514537
if let welcome = AdamantContacts.donate.messages["chats.welcome_message"] {
515-
chatProvider.fakeReceived(message: welcome.message,
516-
senderId: AdamantContacts.donate.address,
517-
date: Date.adamantNullDate,
518-
unread: false,
519-
silent: true,
520-
showsChatroom: true,
521-
completion: { result in
522-
guard case let .failure(error) = result else {
523-
return
524-
}
525-
526-
print("ERROR showing donate message: \(error.message)")
527-
})
538+
chatProvider.fakeReceived(
539+
message: welcome.message,
540+
senderId: AdamantContacts.donate.address,
541+
date: Date.adamantNullDate,
542+
unread: false,
543+
silent: true,
544+
showsChatroom: true,
545+
completion: { result in
546+
guard case let .failure(error) = result else {
547+
return
548+
}
549+
550+
print("ERROR showing donate message: \(error.message)")
551+
}
552+
)
528553
}
529554

530555
if let welcome = AdamantContacts.adamantWelcomeWallet.messages["chats.welcome_message"] {
531-
chatProvider.fakeReceived(message: welcome.message,
532-
senderId: AdamantContacts.adamantWelcomeWallet.name,
533-
date: Date.adamantNullDate,
534-
unread: unread,
535-
silent: welcome.silentNotification,
536-
showsChatroom: true,
537-
completion: { result in
538-
guard case let .failure(error) = result else {
539-
return
540-
}
541-
542-
print("ERROR showing welcome message: \(error.message)")
543-
})
556+
chatProvider.fakeReceived(
557+
message: welcome.message,
558+
senderId: AdamantContacts.adamantWelcomeWallet.name,
559+
date: Date.adamantNullDate,
560+
unread: unread,
561+
silent: welcome.silentNotification,
562+
showsChatroom: true,
563+
completion: { result in
564+
guard case let .failure(error) = result else {
565+
return
566+
}
567+
568+
print("ERROR showing welcome message: \(error.message)")
569+
}
570+
)
544571
}
545572

546573
/*

Adamant/Assets/l18n/de.lproj/Localizable.strings

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,9 @@
8888
/* System accounts: Bet on Bitcoin Price */
8989
"Accounts.BetOnBitcoin" = "Bet on Bitcoin price";
9090

91+
/* System accounts: Adelina */
92+
"Accounts.Adelina" = "Adelina AI";
93+
9194
/* System accounts: Donates ADAMANT Foundation */
9295
"Accounts.DonateADMFoundation" = "Spenden an ADAMANT Foundation";
9396

@@ -287,7 +290,7 @@
287290
"Chats.Exchange.WelcomeMessage" = "Hi! 😊 I'm your exchange bot. I operate instantly and anonymously. Type **/help** to see what I can do. I ask for a higher fee than my fellow bots, so I recommend that you set up your own bot with a competitive fee. ℹ️ You can learn more on ADAMANT blog. I'm highly reliable but if you have any troubles, please leave a message here U6386412615727665758.";
288291

289292
/* Known contacts: Adamant Bet On Bitcoin message. Markdown supported. */
290-
"Chats.BetOnBitcoin.WelcomeMessage" = "Hi! 😊 I'm anonymous and Blockchain-proved bet bot. I accept bets on BTC rate and pay rewards to winners. ℹ️ Learn more on ADAMANT’s blog or type **/help** to start betting. Support via U6386412615727665758.";
293+
"Chats.BetOnBitcoin.WelcomeMessage" = "Hello, I’m Adelina. Let's have a pleasure talk! I can do many things like:\n\n- Draft an email or other piece of writing\n- Write Python code\n- Answer questions about a set of documents\n- Support conversations\n- Tutor in a range of subjects\n- Translate languages\n- Compose a poem\n- Simulate characters for video games and much more";
291294

292295
/* Known contacts: Adamant donate welcome message. Markdown supported. */
293296
"Chats.Donate.WelcomeMessage" = "We develop decentralized ADAMANT Messenger due to your support—transfer ADM, ETH and other tokens in this chat. Additional wallets for donations see on adamant.im.";

Adamant/Assets/l18n/en.lproj/Localizable.strings

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,9 @@
8888
/* System accounts: Bet on Bitcoin Price */
8989
"Accounts.BetOnBitcoin" = "Bet on Bitcoin price";
9090

91+
/* System accounts: Adelina */
92+
"Accounts.Adelina" = "Adelina AI";
93+
9194
/* System accounts: Donates ADAMANT Foundation */
9295
"Accounts.DonateADMFoundation" = "Donate to ADAMANT Foundation";
9396

@@ -286,6 +289,9 @@
286289
/* Known contacts: Adamant Bet On Bitcoin message. Markdown supported. */
287290
"Chats.BetOnBitcoin.WelcomeMessage" = "Hi! 😊 I'm anonymous and Blockchain-proved bet bot. I accept bets on BTC rate and pay rewards to winners. ℹ️ Learn more on ADAMANT’s blog or type **/help** to start betting. Support via U6386412615727665758.";
288291

292+
/* Known contacts: Adamant Adelina message. Markdown supported. */
293+
"Chats.Adelina.WelcomeMessage" = "Hello, I’m Adelina. Let's have a pleasure talk! I can do many things like:\n\n- Draft an email or other piece of writing\n- Write Python code\n- Answer questions about a set of documents\n- Support conversations\n- Tutor in a range of subjects\n- Translate languages\n- Compose a poem\n- Simulate characters for video games and much more";
294+
289295
/* Known contacts: Adamant donate welcome message. Markdown supported. */
290296
"Chats.Donate.WelcomeMessage" = "We develop decentralized ADAMANT Messenger thanks to your support—transfer ADM, ETH and other tokens in this chat. For additional donation wallets, see adamant.im.";
291297

Adamant/Assets/l18n/ru.lproj/Localizable.strings

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,9 @@
8585
/* System accounts: Bet on Bitcoin Price */
8686
"Accounts.BetOnBitcoin" = "Ставки на курс биткоина";
8787

88+
/* System accounts: Adelina */
89+
"Accounts.Adelina" = "Аделина AI";
90+
8891
/* System accounts: Donates ADAMANT Foundation */
8992
"Accounts.DonateADMFoundation" = "Поддержите ADAMANT Foundation";
9093

@@ -286,6 +289,9 @@
286289
/* Known contacts: Adamant Bet On Bitcoin message. Markdown supported. */
287290
"Chats.BetOnBitcoin.WelcomeMessage" = "Привет! 😊 Я — бот-тотализатор. Принимаю ставки на курс биткоина анонимно и с доказательством в блокчейне. ℹ️ Узнайте больше в блоге АДАМАНТа или наберите **/help**, чтобы сделать ставку. А еще вы можете создать своего бота. Поддержка по адресу U6386412615727665758.";
288291

292+
/* Known contacts: Adamant Adelina message. Markdown supported. */
293+
"Chats.Adelina.WelcomeMessage" = "Привет, я Аделина. Давай приятно поговорим! Я много чего умею, например:\n\n- Создавать электронные письма и другие документы\n- Писать код на Python\n- Отвечать на вопросы о мире\n- Поддерживать разговоры,\n- Помогать в учебе по разным предметам\n- Переводить на языки\n- Сочинять стихи\n- Создавать персонажей для видеоигр и многое другое";
294+
289295
/* Known contacts: Adamant donate welcome message. Markdown supported. */
290296
"Chats.Donate.WelcomeMessage" = "Мы развиваем децентрализованный месенджер АДАМАНТ благодаря вашей поддержке — переведите ADM, ETH или другие токены в этом чате. Дополнительные кошельки для донатов смотрите на adamant.im.";
291297

Adamant/Helpers/String+adamant.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,8 @@ extension String {
116116
return AdamantContacts.donate.name
117117
case "chats.virtual.exchange_bot_title":
118118
return AdamantContacts.adamantExchange.name
119+
case "chats.virtual.adelina_title":
120+
return AdamantContacts.adelina.name
119121
default:
120122
return self
121123
}

Adamant/ServiceProtocols/DataProviders/AccountsProvider.swift

Lines changed: 61 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -88,10 +88,18 @@ enum AdamantContacts {
8888
case betOnBitcoin
8989
case donate
9090
case adamantWelcomeWallet
91+
case adelina
9192

92-
static let systemAddresses: [String] = {
93-
return [AdamantContacts.adamantExchange.name, AdamantContacts.betOnBitcoin.name, AdamantContacts.adamantIco.name, AdamantContacts.adamantBountyWallet.name, AdamantContacts.adamantNewBountyWallet.name, AdamantContacts.donate.name, AdamantContacts.adamantWelcomeWallet.name]
94-
}()
93+
static let systemAddresses = [
94+
AdamantContacts.adelina.name,
95+
AdamantContacts.adamantExchange.name,
96+
AdamantContacts.betOnBitcoin.name,
97+
AdamantContacts.adamantIco.name,
98+
AdamantContacts.adamantBountyWallet.name,
99+
AdamantContacts.adamantNewBountyWallet.name,
100+
AdamantContacts.donate.name,
101+
AdamantContacts.adamantWelcomeWallet.name
102+
]
95103

96104
static func messagesFor(address: String) -> [String:SystemMessage]? {
97105
switch address {
@@ -110,6 +118,9 @@ enum AdamantContacts {
110118
case AdamantContacts.betOnBitcoin.address, AdamantContacts.betOnBitcoin.name:
111119
return AdamantContacts.betOnBitcoin.messages
112120

121+
case AdamantContacts.adelina.address, AdamantContacts.adelina.name:
122+
return AdamantContacts.adelina.messages
123+
113124
default:
114125
return nil
115126
}
@@ -131,14 +142,16 @@ enum AdamantContacts {
131142
return NSLocalizedString("Accounts.BetOnBitcoin", comment: "System accounts: Bet on Bitcoin Price")
132143
case .donate:
133144
return NSLocalizedString("Accounts.DonateADMFoundation", comment: "System accounts: Donates ADAMANT Foundation")
145+
case .adelina:
146+
return NSLocalizedString("Accounts.Adelina", comment: "System accounts: Adelina")
134147
}
135148
}
136149

137150
var isSystem: Bool {
138151
switch self {
139-
case .adamantExchange, .betOnBitcoin:
152+
case .adamantExchange, .betOnBitcoin, .adelina:
140153
return false
141-
default:
154+
case .adamantWelcomeWallet, .iosSupport, .adamantIco, .adamantBountyWallet, .adamantNewBountyWallet, .donate:
142155
return true
143156
}
144157
}
@@ -153,6 +166,7 @@ enum AdamantContacts {
153166
case .betOnBitcoin: return AdamantResources.contacts.betOnBitcoin
154167
case .donate: return AdamantResources.contacts.donateWallet
155168
case .adamantWelcomeWallet: return AdamantResources.contacts.adamantWelcomeWallet
169+
case .adelina: return AdamantResources.contacts.adelinaWallet
156170
}
157171
}
158172

@@ -166,28 +180,29 @@ enum AdamantContacts {
166180
case .adamantIco: return AdamantResources.contacts.adamantIcoPK
167181
case .donate: return AdamantResources.contacts.donateWalletPK
168182
case .adamantWelcomeWallet: return AdamantResources.contacts.adamantBountyWalletPK
183+
case .adelina: return AdamantResources.contacts.adelinaWalletPK
169184
}
170185
}
171186

172187
var isReadonly: Bool {
173188
switch self {
174189
case .adamantBountyWallet, .adamantNewBountyWallet, .adamantIco, .adamantWelcomeWallet: return true
175-
case .iosSupport, .adamantExchange, .betOnBitcoin, .donate: return false
190+
case .iosSupport, .adamantExchange, .betOnBitcoin, .donate, .adelina: return false
176191
}
177192
}
178193

179194
var isHidden: Bool {
180195
switch self {
181196
case .adamantBountyWallet, .adamantNewBountyWallet: return true
182-
case .adamantIco, .iosSupport, .adamantExchange, .betOnBitcoin, .donate, .adamantWelcomeWallet: return false
197+
case .adamantIco, .iosSupport, .adamantExchange, .betOnBitcoin, .donate, .adamantWelcomeWallet, .adelina: return false
183198
}
184199
}
185200

186201
var avatar: String {
187202
switch self {
188-
case .adamantExchange, .betOnBitcoin, .donate, .adamantBountyWallet, .adamantNewBountyWallet:
203+
case .adamantExchange, .betOnBitcoin, .donate, .adamantBountyWallet, .adamantNewBountyWallet, .adelina:
189204
return ""
190-
default:
205+
case .adamantIco, .iosSupport, .adamantWelcomeWallet:
191206
return "avatar_bots"
192207
}
193208
}
@@ -212,16 +227,47 @@ enum AdamantContacts {
212227
return [:]
213228

214229
case .donate:
215-
return ["chats.welcome_message": SystemMessage(message: AdamantMessage.markdownText(NSLocalizedString("Chats.Donate.WelcomeMessage", comment: "Known contacts: Adamant donate welcome message. Markdown supported.")),
216-
silentNotification: true)]
230+
return ["chats.welcome_message": SystemMessage(
231+
message: AdamantMessage.markdownText(
232+
NSLocalizedString(
233+
"Chats.Donate.WelcomeMessage",
234+
comment: "Known contacts: Adamant donate welcome message. Markdown supported."
235+
)
236+
),
237+
silentNotification: true
238+
)]
217239

218240
case .adamantExchange:
219-
return ["chats.welcome_message": SystemMessage(message: AdamantMessage.markdownText(NSLocalizedString("Chats.Exchange.WelcomeMessage", comment: "Known contacts: Adamant welcome message. Markdown supported.")),
220-
silentNotification: true)]
241+
return ["chats.welcome_message": SystemMessage(
242+
message: AdamantMessage.markdownText(
243+
NSLocalizedString(
244+
"Chats.Exchange.WelcomeMessage",
245+
comment: "Known contacts: Adamant welcome message. Markdown supported."
246+
)
247+
),
248+
silentNotification: true
249+
)]
221250

222251
case .betOnBitcoin:
223-
return ["chats.welcome_message": SystemMessage(message: AdamantMessage.markdownText(NSLocalizedString("Chats.BetOnBitcoin.WelcomeMessage", comment: "Known contacts: Adamant welcome message. Markdown supported.")),
224-
silentNotification: true)]
252+
return ["chats.welcome_message": SystemMessage(
253+
message: AdamantMessage.markdownText(
254+
NSLocalizedString(
255+
"Chats.BetOnBitcoin.WelcomeMessage",
256+
comment: "Known contacts: Adamant welcome message. Markdown supported."
257+
)
258+
),
259+
silentNotification: true
260+
)]
261+
case .adelina:
262+
return ["chats.welcome_message": SystemMessage(
263+
message: AdamantMessage.markdownText(
264+
NSLocalizedString(
265+
"Chats.Adelina.WelcomeMessage",
266+
comment: "Known contacts: Adamant welcome message. Markdown supported."
267+
)
268+
),
269+
silentNotification: true
270+
)]
225271
}
226272
}
227273
}

0 commit comments

Comments
 (0)