điện thoại BlackBerry
Trang 1LUẬN VĂN TỐT NGHIỆP
Luận văn tốt nghiệp
Sinh viên thực hiện:
1 0612374 – Tống Phước Bảo Quốc
2 0612022 – Lương Phan Bình
Sơ lược những vấn đề cơ bản cần làm(tạm thời)
Các vấn đề cũng được định hình 1 cách sơ lược, sau đó sẽ sửa đổi, thêm bớt lại cho hoàn chỉnh và chính xác hơn
I Lời cảm ơn
II Lời nói đầu
III Mục lục
Mục lục
Trang 2IV Danh sách hình
V Danh sách bảng
VI Giới thiệu về điện thoại BlackBerry
A Research In Motion OS:
1 Kiến trúc Research In Motion OS:
Hệ điều hành Research In Motion(RIM OS) được phát triển bởi công ty Research In Motion, được sử dụng hầu hết cho dòng điện thoại thông minh BlackBerry của hãng này
Sơ lược về hệ điều hành Research In Motion:
- Hệ điều hành RIM lập trình trên ngôn ngữ C++.
- Ngôn ngữ lập trình: Sử dụng ngôn ngữ Java và BlackBerry API.
- Kernel: Sử dụng Kernel Java.
- Bản quyền sử dụng: Research In Motion độc quyền phân phối và phát triển.
- Ngôn ngữ hỗ trợ: US English, UK English, French, Spanish, European Portuguese, Brazilian Portuguese, Basque, Catalan, Galician, Italian, German, Dutch, Russian, Polish, Czech, Hungarian, Turkish, Arabic, Hebrew, Indonesian, Thai, Japanese, Chinese (Traditional), Chinese (Simplified), Korean.
Hệ điều hành BlackBerry là một hệ điều hành đa nhiệm, sử dụng cách thức dẫn nhập
dữ liệu thông qua bánh xe di chuyển(Trackwheel), viên bi di chuyển(Trackball) hay bàn cảm ứng(Trackpad), màn hình cảm ứng(Touchscreen) Hệ điều hành hỗ trợ các thông tin thiết bị di động chuẩn MIDP 1.0 và giao thức không dây chuẩn WAP 1.2 Hỗ trợ trình duyệt web WAP và các thông tin như lịch, công việc, địa chỉ, E-mail và chú thích như một
số điện thoại thông minh khác.
Các chức năng này được thực hiện bởi phần mềm BlackBerry Enterprise Server(BES), phần mềm này là một phần của hệ điều hành Một phiên bản cải tiến của BES là
BlackBerry Internet Service(BIS) Nó cho phép người dùng truy cập Internet Ngoài ra, người dùng còn có thể sử dụng các giao thức POP3, IMAP và truy cập Outlook E-mail mà không cần truy cập thông qua BES khi sử dụng BIS BIS là một dịch vụ được điều hành bởi RIM, được cung cấp thông qua các nhà cung cấp dịch vụ di động Các phiên bản cập nhật có thể được tải thông qua dịch vụ tải OTASL(Air Software Loading) cung cấp bởi hệ điều hành BlackBerry.
Trang 3Mặc dù hệ điều hành BlackBerry là một hệ điều hành đóng, nhưng nó cung cấp một thư viện giao diện lập trình ứng dụng(Application Programming Interface – API) Các nhà lập trình có thể sử dụng các API này để biết chương trình ứng dụng cho BlackBerry
Hệ điều hành Research In Motion được sử dụng cho các máy của chính hãng là BlackBerry Vì vậy đều được sử dụng các phương thức nhập liệu sau:
Trackwheel trên máy BlackBerry 8700(Nguồn: www.gsmarena.com)
Trang 5Trackpad trên điện thoại Blackberry Bold 9700(Ngồn www.GSMArena.com)
(d) Touchscreen:
Touchscreen là kiểu nhập liệu được sử dụng cho các máy có màn hình cảm ứng như dòng điện thoại 9500 Người dùng có thể dùng tay hoặc bút cảm ứng để chọn trực tiếp trên màn hình cảm ứng này.
Trang 6Touchscreen trên điện thoại Blackberry Storm 9500(Nguồn: www.GSMArena.com)
sử dụng rộng rãi cho các máy đánh chữ và máy tính ngày nay.
Research In Motion đã ứng dụng kiểu bàn phím này vào điện thoại của mình Giúp người dùng có thể nhập liệu bằng cả 2 tay và nhập liệu nhanh hơn Kiểu bàn phím này đươc sử dụng trên hầu hết các điện thoại của BlackBerry, trừ các loại điện thoại cảm ứng
và các dòng sử dụng bàn phím SureType
Trang 7Bàn phím QWERTY trên máy BlackBerry Curve 8900(Nguồn: ecvv.com) Một số điện thoại được phân phối ở Bĩ hoặc Pháp còn sử dụng bàn phím AZERTY, một phiên bản khác của kiểu bàn phím QWERTY cho những người sử dụng ngôn ngữ Bĩ hay Pháp.
Trang 8Bàn phím AZERT Y Trên máy BlackBerry Curve 8900(Nguồn: www
mepodphone.net)
(b) Bàn phím SureType:
Bàn phím SureType là kiểu bàn phím dựa vào kiểu bàn phím QWERTY, nhưng thiết
kế 2 ký tự trên 1 phím, giúp cho bàn phím SureType trở nên nhỏ gọn hơn so với bàn phím QWERTY nhưng vẫn đáp ứng được nhu cầu nhập liệu nhanh của người sử dụng
BlackBerry.
Bàn phím SureType còn trang bị cho người dùng một từ điển khoảng 35.000 chữ tiếng Anh, giúp cho người dùng có thể gõ nhanh hơn bằng chế độ gõ chữ thông minh Ngoài ra, các dòng điện thoại sử dụng bàn phím SureType còn có chức năng tự động học
và nhớ những từ người dùng để nhập liệu để thêm vào bộ tự điển, giúp người dùng nhập liệu nhanh hơn.
Bàn phím SureType được sử dụng cho các điện thoại như Pearl 8100, 8110, 8120, 8130.v.v.
Trang 9Bàn phím SureType trên điện thoại BlackBerry 8100(Nguồn: www.pdastreet.com)
bản hệ điều hành
Mobile[
T-3]
AT&T[4] Bell[5] Rogers[
6] Telus[7] Verizon[ 8] Sprint[9 ] Mobile Virgin
USA[10] Cập
20-Apr-09
17-Sep-10
22-Jan-May-10
8100 Pearl Trackball 4.5.0 4.2.1.10
7
4.5.0.110
Trang 104.5.0.175
4.5.0.186
4.5.0.160
4.5 (4/21/2009)
4.5.0.175
5.0.0.59
1 (4/20/2010)
5.0.0.62
4 (05/04/2010)
Trang 119700 Bold 2
(Onyx) Trackpad 5.0.0 5.0.0.586
(5/18/2010)
5.0.0.50
8 (3/22/2010)
5.0.0.459
5.0.0.1013
Các phiên bản hệ điều hành Research In Motion(Nguồn: Wikipedia.org)
3 Giới thiệu Research In Motion OS 5.0:
Do ứng dụng gởi và nhận mail trên điện thoại Blackberry được viết để chạy trên nền tảng hệ điều hành Research In Motion series 5.0, sau đây là một số sơ lược về phiên
bản này.
Sự ra đời và phát triển mạnh mẽ của dòng điện thoại thông minh đã tạo ra môi trường phát triển ứng dụng mới Trong đó sự phát triển mạnh mẽ của dòng điện thoại cảm
ứng thúc đẩy sự ra đời của các dòng máy, hệ điều hành tiên tiến hơn, có thể đáp ứng được
nhu cầu phát triển của thị trường
Trang 12Research In Motion đã cho ra đời phiên bản OS 5.0, được phát triển cho các dòng điện thoại BlackBerry Pearl Flip 8200, Curve 8350i, 8330, 8520 và 8900, Bold 9000, Storm 9530 và Tour 9630 Sự ra đời của hệ điều hành phiên bản mới này đánh dấu bước phát triển mạnh mẽ của hãng và hệ điều hành với các tính năng hỗ trợ màn hình cảm ứng,
và các tính năng mạnh mẽ khác hỗ trợ tốt hơn cho người dùng.
Giao diện Research In Motion OS 5.0(Nguồn: Wikipedia) Tất cả các thiết bị sử dụng BlackBerry Internet Service(BIS) chạy hệ điều hành phiên bản 5.0 này được cung cấp một trình duyệt mới mạnh mẽ hơn với các chức năng hỗ trợ AJAX, chạy JavaScript tốt hơn và nhanh hơn, bộ hỗ trợ BlackBerry Widget – bao gồm
cả Google Gears và SQLite cho Blackberry Widgets.
Ngoài các tính năng hỗ trợ BlackBerry Internet Service, hệ điều hành phiên bản 5.0 còn cung cấp cho người dùng những tính năng ưu việt như cờ đánh dấu E-mail, quản lý thư mục E-mail, tính năng để có thể xem và quản lý văn bản từ chia sẽ file từ xa, chuyển lịch công việc và kết nối mạnh mẽ Ngoài ra, với các tính năng hỗ trợ màn hình cảm ứng, giao diện hoàn toàn mới và tiện dụng cho người dùng, Phiên bản hệ điều hành Research In Motion 5.0 đánh dấu một bước phát triển mạnh mẽ, đáp ứng nhu cầu của người sử dụng và
cả lập trình viên.
B BlackBerry Mobile:
1 Tổng quan về BlackBerry Mobile:
BlackBerry là tên gọi chung của một thiết bị di động được phát triển bởi công ty Research In Motion(RIM) có trụ sở chính tại Canada Ngoài các tính năng thông thường của một thiết bị thông minh như sổ địa chỉ, lịch công việc.v.v BlackBerry còn được biết
Trang 13đến như một thiết bị hỗ trợ mạnh mẽ cho việc gởi và nhận mail ở bất kì đầu, miễn là nó có thể kết nối với mạng di động.
BlackBerry hiện nay chiếm hơn 20% thị trường thiết bị cầm tay thông
tin(smartphone) Với nhiều đặc tính nổi trội như khả năng bảo mật cao, hỗ trợ gởi và nhận mail một cách mạnh mẽ, có thể kết nối ở khắp mọi nơi.v.v BlackBerry đã trở thành thiết bị cầm tay thông minh phổ biến nhất đối với các doanh nhân ở thị trường Mỹ.
Thiết bị Blackberry xuất hiện đầu tiên vào năm 1999 chỉ đơn thuần là một máy nhắn tin di động(Pager) Chiếc máy có số hiệu 850 sử dụng 2 pin AA, có một số chức năng cơ bản như truy cập Internet, lịch hẹn, sắp xếp và quản lý công việc.v.v Ở thời điểm các thiết bị di động đều rất lớn và không có nhiều chức năng như bấy giờ, 850 được đón nhận như một trong những thiết bị thành công nhất thời điểm đó, và rất được các doanh nhân ưa chuộng.
Vào năm 2002, các thiết bị phổ biến hơn của BlackBerry ra đời, hỗ trợ push e-mail, gọi điện thoại di động, nhắn tin, fax, duyệt web và một số ứng dụng mạng khác Lúc này thiết bị khá giống với hình dạng các điện thoại phổ biến bây giờ Được cung cấp pin
lithium có thể sạc, dung lượng bộ nhớ và tốc độ xử lý cũng cải tiến hơn rất nhiều
Mặc dù hầu hết các điện thoại dòng 5000 và 6000 của Blackberry đều hướng vào thị trường mạng GSM Nhưng với sự phát triển của Sprint và Verizon trên nền tảng mạng CDMA ở thị trường Mỹ, vào năm 2003 RIM đã phát tirển BlackBerry 6750 cho mạng của Verizon Kế tới là các phiên bản dòng 7200, điển hình là dòng sản phẩm 7250, được phân phối qua Sprint và Verizon Đây là thiết bị đầu tiên của BlackBerry có hỗ trợ Bluetooth.
Ở thời điểm này, BlackBerry sản xuất thiết bị cho cả 2 dòng mạng GSM và CDMA Trong đó 7210, 7220, 7230, 7280, 7290 được thiết kế cho mạng GSM Và 7250 được thiết kế cho mạng CDMA Riêng 7270 thật chất là một thiết bị WLAN, không hoạt động dựa trên mạng di động mà được sử dụng cho mục đích gọi VoIP Dòng điện thoại 7500 sau đó được thiết kế cho mạng di động iDEN của Motorola
Có thể nói, bàn phím QWERTY là biểu tượng của Blackberry Tuy nhiên, một số người lại cho rằng thiết bị full QWERTY lại quá cồng kềnh, và họ ưa chuộng dòng thiết bị mỏng và nhẹ hơn Chính vì điều này, RIM đã phát triển và phân phối 7100t thông qua mạng T-Mobile vào cuối năm 2004, sử dụng bàn phim SureType – kiểu bàn phím với 2 ký tự cho mỗi phím
Trang 14Dòng thiết bị sử dụng bằng phím SureType thật sự được biết đến rộng rãi với sự ra đời của phiên bản 8100 vào năm 2006, hay còn gọi là BlackBerry Pearl Với thay đổi lớn chính là một viên bi cuộn ở giữa(được gọi là Trackball) được thay thế cho thanh cuộn bên hông(được gọi là Trackwheel) của những dòng sản phẩm trước Ban đầu, Pearl được thiết kế hỗ trợ mạng GSM, nhưng vào cuối 2007, Pearl 8130 được phát triển cho mạng CDMA.
Sau một loạt sản phẩm với bàn phím cải tiến SureType, BlackBerry lại cho ra đời dòng sản phẩm 8700 với kiểu bàn phím QWERTY, sản phẩm này là một trong những sản phẩm bán chạy nhất của BlackBerry 8700 được phát triển với 3 dòng sản phẩm, một cho mạng GSM với EDGE, một cho mạng GSM không sử dụng EDGE(phổ biến ở các nước Anh, Ý, Hồng Kông, Singapore, W-CDMA ở Nhật), và một dòng sản phẩm khác sử dụng cho mạng CDMA.
Vào ngày 12/2/2007, Blackberry bắt đầu phân phối 8800, sản phẩm GSM bán chạy nhất tại thời điểm lúc bấy giờ Đây là thiết bị với kiểu bàn phím QWERTY kết hợp với viên bi Trackball của dòng sản phẩm 8100 Vài tháng sau dòng sản phẩm 8830 được phân phối thông qua Verizon, sử dụng mạng CDMA Và sau đó dòng sản phẩm 8820 ra đời đây là sản phẩm sử dụng Wifi đầu tiên của BlackBerry.
Vào tháng 5/2007 BlackBerry lại tiếp tục giới thiệu dòng sản phẩm BlackBerry
8300, hay còn gọi là BlackBerry Curve Đây là sản phẩm đầu tiên của BlackBerry có tích hợp camera, sản phẩm này cũng được phân phối ở nhiều mạng khác nhau như GSM hay CDMA.
BlackBerry đã và đang phát triển cho tới tận ngày nay Với nhiều sản phẩm cải tiến theo từng năm cụ thể, với nhiều kiểu dáng khác nhau như nắp gập, nắp trượt, cảm ứng.v.v BlackBerry đã và đang dần khẳng định vị thế là một trong những sản phẩm thiết bị cầm tay thông minh mạnh và hiệu quả nhất.
2 Một số vấn đề khi xây dựng ứng dụng trên BlackBerry:
Ứng dụng trên Blackberry có thể được phát triển bằng ngôn ngữ Java, cụ thể là J2ME(Java micro Edition) Ngoài ra, Research In Motion còn cung cấp cho những người phát triển ứng dụng một bộ Application Programming Interface(API) bao gồm các hàm và các câu lệnh hỗ trợ việc lập trình trên điện thoại BlackBerry.
Trang 15b) Môi trường lập trình Blackberry:
Email có thể dùng để nhận việc, giao việc giữa những người trong công ty, cập nhật thông tin mới, liên lạc với đối tác.v.v Đối với một số người, ví dụ điển hình như các doanh nhân Việc gởi và nhận mail hằng ngày và liên tục đã trở thành một việc không thể tránh khỏi Như vậy, câu hỏi là làm sao để có thể gởi và nhận mail liên tục được, trong khi bạn không phải lúc nào cũng ngồi cạnh máy tính và kết nối Internet.
Thiết bị cầm tay nói chung, hay điện thoại di động nói riêng chính là một giải pháp tốt cho vấn đề này Nhu cầu đặt ra ở đây chính là một phần mềm có thể gởi và nhận mail trên chính điện thoại của bạn Từ đó bạn có thể cập nhật thông tin về E-mail của bạn ở mọi nơi, mọi lúc, giúp chúng ta theo kịp tiến độ và cập nhật tình hình công việc của mình một cách dễ dàng.
B Tầm ứng dụng của gởi và nhận mail:
C Các giao thức hỗ trợ gởi/nhận mail:
1 IMAP(Internet Message Access Protocol)
Trang 16- Online: Mail cũ vẫn nằm trên server, mọi hành động trên client đều có thực hiện tương đương trên server.
- Disconnect: Mail cũ lưu tạm trên Client và làm việc Và được cập nhật trên server khi có kết nối ở lần kế tiếp.
- OK: lệnh hoàn thành.
- BAD: không nhận ra command hay tham số không hợp lệ
Yêu cầu server trả về danh sách các khả năng mà nó hỗ trợ Danh sách này được trả về trong một lời trả lời không thẻ CAPABILITY.
- OK: lệnh hoàn thành.
- BAD: không nhận ra command hay tham số không hợp lệ.
Lệnh noop luôn luôn thành công Câu lệnh này không thực hiện hành động nào cả.
Lệnh noop có thể được dùng để reset bộ đếm giờ để tự động logout của server khi không
có hành động nào.
Ví dụ:
C: A023 LOGOUT
S: * BYE IMAP4rev1 Server logging out
S: A023 OK LOGOUT completed
(3) LOGOUT Command
Tham số: Không
Trả lời: Phải có câu trả lời BYE(Không có nhãn)
Trang 17Kết quả:
- OK – Logout thành công
- BAD – Câu lệnh hoặc tham số sai
Câu lệnh Logout cho Server biết Client đã thực hiện xong việc kết nối Server phải gởi một trả lời BYE trước trả lời OK(Có nhãn), sau đó Server đóng kết nối lại.
Ví dụ:
C: A023 LOGOUT
S: * BYE IMAP4rev1 Server logging out
S: A023 OK LOGOUT completed
(4) STARTTLS Command
Tham số: Không có
Trả lời: Không có trả lời nào đặc biệt cho câu lệnh này
Kết quả:
- OK – Câu lệnh thành công, bắt đầu quá trình thương lượng bằng TLS.
- BAD – Câu lệnh sai hoặc tham số sai.
Quá trình thương lượng bằng TLS sẽ bắt đầu ngay sau CRLF tại câu trả lời có nhãn OK của server Không nên đưa ra câu lệnh nào khác trừ khi server đã trả lời quá trình thương lượng bằng TLS hoàn tất.
Server tồn tại dưới dạng không chứng thực, ngay cả khi Client có ủy nhiệm trong quá trình thương lượng TLS
Client nên xóa tất cả thông tin trước đó về server và thực hiện lại lệnh CAPABILITY Lúc này, có thể server sẽ hỗ trợ thêm các khả năng mới cho client trong môi trường mạng đã an toàn.
Ví dụ:
C: a001 CAPABILITY
S: * CAPABILITY IMAP4rev1 STARTTLS LOGINDISABLED
S: a001 OK CAPABILITY completed
C: a002 STARTTLS
S: a002 OK Begin TLS negotiation now <TLS negotiation,
further commands are under [TLS] layer>
C: a003 CAPABILITY
S: * CAPABILITY IMAP4rev1 AUTH=PLAIN
Trang 18S: a003 OK CAPABILITY completed
C: a004 LOGIN joe password
S: a004 OK LOGIN completed
(5) AUTHENTICATE Command
Tham số: tên của cơ chế chứng thực
Trả lời: yêu cầu cung cấp thêm thông tin để tiếp tục lệnh
Kết quả:
- OK: chứng thực thành công, client vào trạng thái đã được chứng thực;
- NO: chứng thực thất bại;
- BAD: không nhận ra lệnh hoặc tham số không hợp lệ, sự trao đổi chứng thực bị hủy.
Việc trao đổi giao thức chứng thực bao gồm các thách thức (challenges) từ server và các trả lời của client Thách thức của server là chuỗi BASE64 theo sau dấu “+” Nếu client muốn hủy quá trình chứng thực thì chỉ cần gửi một lệnh chứa duy nhất “*” cho server.
(6) LOGIN Command
Tham Số:
- Username: Username dùng để đăng nhập
- Password: Mật khẩu đăng nhập
Trả lời: Không có trả lời đặc biệt cho câu lệnh này
Kết quả:
- OK – Đăng nhập thành công, đang ở trạng thái chứng thực.
- NO – Đăng nhập không thành công: Username hay Password sai.
- BAD – Câu lệnh sai hoặc tham số sai.
Câu lệnh LOGIN xác nhận Client và một password dạng plaintext để chứng thực người dùng này.
Server có thể kết hợp cả câu trả lời CAPABILITY trong nhãn OK để trả lời cho câu lệnh LOGIN thành công để gởi khả năng của server một cách tự động.
(7) SELECT Command
Tham số: tên hộp thư
Trả lời:
Trang 19- Yêu cầu sự đáp lại không nhãn: FLAGS, EXISTS, RECENT
- Yêu cầu sự đáp lại không nhãn với OK: UNSEEN, PERMANENTFLAGS,
UIDNEXT, UDIVALIDITY.
Kết quả:
- OK: nếu lệnh thành công, vào trạng thái đã chọn hộp thư
- NO: lệnh thất bại, không có hộp thư hoặc không có quyền truy cập
- BAD: không nhận ra lệnh hoặc tham số không hợp lệ.
FLAGS Các cờ được định nghĩa trong hộp thư.
<n> EXISTS Số lượng tin nhắn trong hộp thư.
<n> RECENT Số lượng các tin nhắn có cờ /Recent
OK [UNSEEN <n>] Số thứ tự của tin nhắn chưa được đọc đầu tiên.
OK [PERMANENTFLAGS (list of flags)] danh sách các cờ mà client có thể thay đổi vĩnh viễn Nếu không có danh sách này thì mặc định có thể thay đổi tất cả các cờ.
OK [UIDNEXT <n>] Giá trị UID tiếp theo.
OK [UDIVALIDITY <n>] Giá trị UID có hiệu lực.
Với mỗi kết nối chỉ có thể chọn một hộp thư trong một thời điểm
Nếu client được phép thay đổi hộp thư thì trong kết quả trả về kèm theo
“[READ-WRITE]” theo sau OK.
Ví dụ
C: A142 SELECT INBOX
S: * 172 EXISTS
S: * 1 RECENT
S: * OK [UNSEEN 12] Message 12 is first unseen
S: * OK [UIDVALIDITY 3857529045] UIDs valid
S: * OK [UIDNEXT 4392] Predicted next UID
S: * FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
S: * OK [PERMANENTFLAGS (\Deleted \Seen \*)] Limited
S: A142 OK [READ-WRITE] SELECT completed
Trang 20- Yêu cầu sự đáp lại không nhãn với OK: UNSEEN, PERMANENTFLAGS,
UIDNEXT, UDIVALIDITY.
Kết quả:
- OK: nếu lệnh thành công, vào trạng thái đã chọn hộp thư
- NO: lệnh thất bại, không có hộp thư hoặc không có quyền truy cập
- BAD: không nhận ra lệnh hoặc tham số không hợp lệ.
Lệnh này giống với lệnh SELECT, chỉ khác biệt ở chỗ là client không thể thay đổi các tin nhắn được Trong kết quả trả về từ server, kèm theo “[READ-ONLY]” theo sau OK.
Ví dụ:
C: A932 EXAMINE blurdybloop
S: * 17 EXISTS S: * 2 RECENT
S: * OK [UNSEEN 8] Message 8 is first unseen
S: * OK [UIDVALIDITY 3857529045] UIDs valid
S: * OK [UIDNEXT 4392] Predicted next UID
S: * FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
S: * OK [PERMANENTFLAGS ()] No permanent flags permitted
S: A932 OK [READ-ONLY] EXAMINE completed
(9) CREATE Command
Tham số: tên hộp thư
Trả lời: không có
Kết quả:
- OK: tạo thành công;
- NO: không thể tạo hộp thư với tham số tên truyền vào
- BAD: không nhận ra lệnh hoặc tham số không hợp lệ.
Tạo một hộp thư (thư mục) mới với tên được chỉ định Server trả về thành công(OK) khi một hộp thư mới được tạo ra Câu lệnh này sẽ báo lỗi nếu như tạo Inbox hoặc 1 hộp thư với tên có sẵn.
Ví dụ:
C: A003 CREATE newmailbox/
S: A003 OK CREATE completed
Trang 21(10) DELETE Command
Arguments: mailbox name
Responses: no specific responses for this command
Result: OK - delete completed
NO - delete failure: can't delete mailbox with that name BAD - command unknown or arguments invalid
The DELETE command permanently removes the mailbox with the given name A tagged OK response is returned only if the mailbox has been deleted It is an error to attempt to delete INBOX or a mailbox name that does not exist
The DELETE command MUST NOT remove inferior hierarchical names For example, if a mailbox "foo" has an inferior "foo.bar"
(assuming "." is the hierarchy delimiter character), removing "foo" MUST NOT remove "foo.bar" It is an error to attempt to delete a name that has inferior hierarchical names and also has the \Noselect mailbox name attribute (see the description of the LIST response for more details)
It is permitted to delete a name that has inferior hierarchical names and does not have the \Noselect mailbox name attribute In this case, all messages in that mailbox are removed, and the name will acquire the \Noselect mailbox name attribute
The value of the highest-used unique identifier of the deleted mailbox MUST be preserved so that a new mailbox created with the same name will not reuse the identifiers of the former
incarnation, UNLESS the new incarnation has a different unique identifier validity value See the description of the UID command for more detail
(11) RENAME Command
Arguments: existing mailbox name
new mailbox name
Responses: no specific responses for this command
Result: OK - rename completed
NO - rename failure: can't rename mailbox with that name, can't rename to mailbox with that name
BAD - command unknown or arguments invalid
The RENAME command changes the name of a mailbox A tagged OK response is returned only if the mailbox has been renamed It is
an error to attempt to rename from a mailbox name that does not exist or to a mailbox name that already exists Any error in renaming will return a tagged NO response
If the name has inferior hierarchical names, then the inferior hierarchical names MUST also be renamed For example, a rename of "foo" to "zap" will rename "foo/bar" (assuming "/" is the